本文首发于我的公众号 Linux云计算网络(id: cloud_dev) ,专注于干货分享,号内有 10T 书籍和视频资源,后台回复 「1024」 即可领取,欢迎大家关注,二维码文末可以扫。 00 介绍 GDB(GNU Debugger)是 UNIX 及 UNIX-like 下的强大调试工具,可以调试 ada, c, c++, asm, minimal, d, fortran, objective-c, go, java,pascal 等语言,这一份指南我们主要以 c 来作为例子。 01 基础 1.1 判断程序是否可调试 # gdb helloworld Reading symbols from helloWorld...(no debugging symbols found)...done. # gdb helloworld Reading symbols from helloWorld...done. 上面一种有 no debugging symbols found 表示不可调试,下面是可调式的。 或者 readelf 查看段信息: 1# readelf -S helloworld|grep debug 2 [28] .debug_aranges PROGBITS 0000000000000000 0000106d 3 [29] .debug_info PROGBITS