【发布时间】:2016-03-10 09:57:04
【问题描述】:
我正在使用 g++ 编译一个库,使用以下参数:
g++ -gdwarf-2 -std=c++0x -m32 -Dunix=1 -Dlinux=1 -D_JAVA=1 -DNDEBUG=1 -I...
虽然我使用的是特定的 DWARF 版本 2,但对我的核心文件的调查不断给出以下错误消息:
Dwarf Error: wrong version in compilation unit header (is 4, should be 2)
有人知道我能做什么吗?
我正在使用以下版本:
CentOS 5.2
g++ (GCC) 4.1.1 20070105 (Red Hat 4.1.1-52)
GNU gdb Red Hat Linux (6.5-37.el5rh)
无法更新平台。
供您参考:同时我发现了这个 URL (http://www.delorie.com/gnu/docs/gdb/gdb_17.html),它解释了有时将调试信息与优化标志混合可能是一个坏主意。 结果,我去掉了优化标志(虽然它是“-O0”,并且我使用了“g++ -gdwarf-2 -g3”(如URL中所述),但仍然没有改进。
【问题讨论】: