Hin*_*sum 5 linux debugging gdb difference
我在linux下工作,在我看来“-g”和“-ggdb”的效果没有太大区别。我只发现使用“-ggdb”会生成大几个字节的二进制文件。
那么 gdb 应该有一个“-g”选项和另一个“-ggdb”选项的核心区别是什么?
编译后的程序应该存储在某个地方,以便调试器(这里是 GDB)查看并跟踪它。
这在技术上称为“调试数据格式”。
一些普遍接受的调试数据格式是(还有更多):
COFF - 通用对象文件格式 - 在类 UNIX 系统上。
PE/COFF - 可移植可执行文件 - 在 Windows 上非常有名,通常 dotnet 使用它。
DWARF - 在类 UNIX 系统上流行。
ETC..
您在问题中询问的 GDB 选项与生成这些调试数据格式有关。
根据文档,基本区别是:选项“g”以特定系统的本机格式提供调试数据。选项“-ggdb”有点丰富且昂贵。以最具表现力的可用格式提供调试数据。
| 归档时间: |
|
| 查看次数: |
2423 次 |
| 最近记录: |