首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何链接到gcc中libc和libstdc++的调试版本?

如何链接到gcc中libc和libstdc++的调试版本?
EN

Stack Overflow用户
提问于 2018-04-19 05:32:27
回答 2查看 0关注 0票数 0

参阅以下简单的C ++程序hw.cppint main() { }

g++ -o hw hw.cpp -O0 -gLinux上编译时,运行ldd ./hw会提供:

代码语言:javascript
复制
    linux-gate.so.1 =>  (0x003e5000)
    libstdc++.so.6 => /usr/local/lib/libstdc++.so.6 (0x007c5000)
    libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x006a4000)
    libgcc_s.so.1 => /usr/local/lib/libgcc_s.so.1 (0x00a40000)
    libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00a93000)
    /lib/ld-linux.so.2 (0x00a0f000)

现在我似乎还有调试库/usr/lib/debug/lib/tls/i686/cmov/,我想是系统库的相应调试版本。

EN

回答 2

Stack Overflow用户

发布于 2018-04-19 14:26:37

在许多Linux安装中,调试库不包含真正的代码; 它们只包含调试信息。两者是分开的,这样如果你不需要它们,并且你缺少磁盘空间,你可以选择不安装它们,但是调试库本身并不好。

票数 0
EN

Stack Overflow用户

发布于 2018-04-19 14:54:37

你的程序被链接到调试库。

只有'ldd ./hw'在标准位置找到libstdc ++。为此,需要更改LD_LIBRARY_PATH以获取调试共享库以加载并ldd以正确查找它们

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100008194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档