分类:
2010-10-09 00:05:19
|
测试1:
$ CC -g -o Test Test.cpp
$ gdb Test
ok,可以调试
测试2:
$ CC -g -c Test.cpp; CC -g -o Test Test.o
注:保持编译、链接一致性,请参考《Sun Studio 12:C++ 用户指南.pdf》2.4.3节
$ gdb Test
提示没有调试信息
查询资料,原来sun studio 默认产生的调试信息的格式为stabs,需要编译时-xdebugformat选项,才能产生dwarf格式的调试信息(gdb使用的调试信息格式,dbx可识别两种格式)
stabs和dwarf两种调试信息格式的比较请参考:http://blogs.sun.com/quenelle/entry/stabs_versus_dwarf
解决方法:
在CXXFLAGS选项中加上-xdebugformat=dwarf
后记:
项目中编译大部分工程,可以通过。但是编译某个工程(使用了ICE)时,报以下错误
DBG_GEN FATAL ERROR: "../src/dbg_dwarf2.c":6630, dwarf_transform_to_disk_form() returned DW_DLV_NOCOUNT [DBG_GEN 5.0.8] CC: Fatal error in cg: 退出 (core dumped) |