GCC 4.8 gdwarf2无法工作

GCC 4.8 gdwarf2无法工作,gcc,Gcc,我的gdb版本是6.6,gcc版本是4.8。我知道默认情况下,gcc-g使用dwarf-4格式,但是gcc手册说添加-gdwarf-2选项可以使用较旧的dwarf格式。我试过了,但是不行。当我使用gdb时,它仍然报告: Dwarf Error: wrong version in compilation unit header (is 4, should be 2) 根据说明,您应该使用-gdwarf-2-gstrict dwarf选项完全禁用DWARF4功能: GCC现在也为尾声生成展开信息

我的gdb版本是6.6,gcc版本是4.8。我知道默认情况下,
gcc-g
使用dwarf-4格式,但是gcc手册说添加
-gdwarf-2
选项可以使用较旧的dwarf格式。我试过了,但是不行。当我使用gdb时,它仍然报告:

Dwarf Error: wrong version in compilation unit header (is 4, should be 2) 
根据说明,您应该使用
-gdwarf-2-gstrict dwarf
选项完全禁用DWARF4功能:

GCC现在也为尾声生成展开信息。矮人调试信息 由GCC生成的现在比以前使用了更多的DWARF3功能,并且 还有一些矮人功能。早于7.0的GDB无法处理 为了调试GCC4.5生成的二进制文件或库 需要GDB7.0或更高版本。您可以禁用DWARF4功能的使用 使用-gdwarf-3-gstrict dwarf选项,或使用-gdwarf-2 -gstrict dwarf将GCC限制为仅DWARF2,但无论何时发出展开信息,都会无条件地发出尾声展开信息


您可能应该使用
-gdwarf-2
选项从头开始重建应用程序。$g++-g-gdwarf-2-o test test.cpp,这是我的gcc命令