我正在使用 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)
有人知道我能做什么吗?
我正在使用以下版本:
无法更新平台。
供您参考:同时我找到了这个URL(http://www.delorie.com/gnu/docs/gdb/gdb_17.html),它解释了有时混合调试信息可能是一个坏主意带有优化标志。 结果,我删除了优化标志(虽然它是“-O0”,并且我使用了“g++ -gdwarf-2 -g3”(如URL中提到的),但仍然没有改善。
同时,我通过更新 GDB(和相关)流程解决了问题。