gcov最终链接失败

5
在使用gcov支持编译我的项目时,我遇到了以下错误。
编译时的标志信息如下:
编译器标志:
CXXFLAGS="-Wno-deprecated -g -ggdb -fprofile-arcs -ftest-coverage -fPIC"
LINK_CMD="gcc -fprofile-arcs -fPIC"

以下是版本信息:
gcc版本:
gcc版本4.1.2 20080704(Red Hat 4.1.2-44)
gcov版本:
gcov(GCC)4.1.2 20080704(Red Hat 4.1.2-44)
错误:
在/usr/lib/gcc/x86_64-redhat-linux/4.1.2/libgcov.a(_gcov.o)中隐藏的符号“__gcov_init”被DSO引用 /usr/bin/ld:最终链接失败:输出上不可表示的部分 collect2:ld返回1个退出状态
请问您能帮我解决这个问题吗?
1个回答

7
我已经成功地使用以下步骤解决了自己代码中的问题:
  1. 进行清理操作(删除所有的.o和lib文件)。
  2. 确保每个源文件都具有正确的选项(-fprofile-arcs -ftest-coverage)。
  3. 确保将源文件编译成的每个共享库都指定了-lgcov。
  4. 确保我用-lgcov链接可执行文件。
请参见这个答案这篇博客文章

是的,我解决了将我的共享库与gcov链接的问题。 - Tarod

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接