我正在使用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)
有人知道我能做什么吗?
我正在使用以下版本:
1.平台版本:CentOS 5.2
- g++版本:
g++(GCC)4.1.1 20070105(Red Hat 4.1.1-52)
- gdb版本:
GNU gdb Red Hat Linux(6.5-37.el5rh)
无法更新平台。
供您参考:同时,我发现了这个URL(http://www.delorie.com/gnu/docs/gdb/gdb_17.html),它解释了有时将调试信息与优化标志混合在一起可能是一个坏主意。因此,我已经删除了优化标志(虽然它是“-O 0”,我已经使用了“g++ -gdwarf-2 -g3”(如URL中所述),但仍然没有改进。
1条答案
按热度按时间6rqinv9w1#
与此同时,我已经解决了这个问题,通过更新我的GDB(和相关)过程。