gcov最终链接失败

发布于 2024-11-05 00:35:43 字数 658 浏览 3 评论 0原文

在使用 gcov 支持编译我的项目时,我面临以下错误

时拥有的标志信息

以下是我在编译编译器标志

CXXFLAGS="-Wno-deprecated -g -ggdb -fprofile-arcs -ftest-coverage -fPIC"

:链接器选项:

LINK_CMD="gcc -fprofile-arcs -fPIC"

以下是版本信息:

gcc 版本:

gcc 版本 4.1.2 20080704(红帽 4.1.2-44)

gcov版本:

gcov (GCC) 4.1.2 20080704(红帽 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退出状态

你能帮我摆脱这个问题吗?

While compiling my project with gcov support I am facing the below error

Following are flags information i have while compiling

compiler flags:

CXXFLAGS="-Wno-deprecated -g -ggdb -fprofile-arcs -ftest-coverage -fPIC"

linker options:

LINK_CMD="gcc -fprofile-arcs -fPIC"

Following are version information:

gcc version:

gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)

gcov version:

gcov (GCC) 4.1.2 20080704 (Red Hat 4.1.2-44)

error:

hidden symbol `__gcov_init' in /usr/lib/gcc/x86_64-redhat-linux/4.1.2/libgcov.a(_gcov.o) is referenced by DSO
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status

Could you please help me to get away from this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

微暖i 2024-11-12 00:35:43

我已经能够使用以下步骤在自己的代码中解决此问题:

  1. Make clean(删除所有 .o 和 lib 文件)。
  2. 确保每个源文件都有正确的选项 (-fprofile-arcs -ftest-coverage)。
  3. 确保每个共享库的源文件都编译为指定的 -lgcov
  4. 确保我使用 -lgcov 链接可执行文件。

另请参阅此答案这篇博文

I have been able to solve this problem in my own code using these steps:

  1. Make clean (remove all of my .o and lib files).
  2. Ensure every source file has the correct options (-fprofile-arcs -ftest-coverage).
  3. Ensure every shared library the source files are compiled into specify -lgcov
  4. Ensure I link the executable with -lgcov.

See also this answer and this blog post.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文