gdb(GNU Debugger) 是 Linux 和嵌入式开发中最常用的调试工具之一,可以用来调试 C/C++ 程序、排查崩溃、分析程序流程等。在嵌入式开发中,gdb 还可以通过远程调试(gdbserver)调试目标设备上的程序。
这篇文章是 gdb 调试的入门指南,包括常见命令、使用场景和一些高级技巧。
安装 gdb
:
sudo apt-get update
sudo apt-get install gdb
基本使用流程
编译时开启调试信息
在使用 gdb 调试程序之前,必须在编译时启用调试信息。确保编译时加上 -g
参数:
gcc -g -o my_program my_program.c
启动 gdb
启动 gdb 并加载可执行文件:
gdb ./my_program
gdb a.out
gdb app
#调试完毕后退出
q: qiut
执行调试
进入 gdb 后,可以通过命令控制程序执行和调试流程:
- 设置断点。
- 单步调试。
- 查看变量值、堆栈信息等。
常用命令
程序控制
命令 | 功能 |
---|---|
run 或 r | 启动程序并在 main() 函数处暂停。 |
start | $12 |
continue 或 c | 继续运行程序直到下一个断点或程序结束。 |
quit 或 q | 退出 gdb 调试器。 |
kill | 终止当前调试的程序。 |