c++ - 为什么目标文件的 debug_str 这么大?

标签 c++ c gcc

enter image description here

我用[objdump XXX.o -Ws]输出了很多字符串行,它们都是我其他c++头文件中的struct名称,但其中有一些是重复的,使我的XXX.o如此之大。

谁能告诉我,gcc 是否需要 debug_str 中重复的结构名称? gcc 是否有一些参数可以减少重复的字符串?谢谢。

最佳答案

can anyone tell me, are the repeated struct names in debug_str required for gcc ?

是的,如果您想以友好的方式调试程序,它们是必需的。

and is there some parameters of gcc to reduce the repeated string? thanks. Not directly, no.

您可以在编译时删除 -g 或类似参数。尽管这将不再使源代码级调试成为可能。

您也可以通过对二进制文件或目标文件运行 strip -g 命令自行删除该信息。

请记住,这是调试器使用的调试信息。正常运行程序时不会加载或使用该信息。

关于c++ - 为什么目标文件的 debug_str 这么大?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52439702/

相关文章:

c++ - 通过 openCV 创建矩形蒙版的更好方法

C++ boost 线程和互斥量

c - 我怎么知道换行符在我的环境中以何种方式表示?

c - 我需要一个简单而高效的内存分配算法

c - uint32_t * uint32_t = uint64_t vector 与 gcc 相乘

c++ - strstr 函数对 2015 不起作用

c++ - 链接对象和静态库

c - 帮助 帕斯卡三角

c - 关于如何在数组中插入字符串的问题

c++ - 通过常量迭代器从 STL 容器中删除