linux下gdb调试前准备工作_希望望天的博客-爱代码爱编程
一. Linux-gdb调试中常用命令
1. gdb调试前的准备工作
(1) 编译带调试信息的可执行程序
gdb 调试时,需要带调试信息的可执行程序。所以,代码在 gcc编译时需要添加
-g选项。例如测试代码为debug_test1.c,则编译阶段命令如下:
gcc -g debug_test1.c -o debug_test1
(2) 开始gdb调试工作…
上面生成带调试信息的可执行程序debug_test1,现在可以进行gdb调试了。
gdb调试程序开始,终端输入命令:
gdb ./debug_test1
注意,这里程序还没有运行起来。接下来需要输入 start 命令或 run 命令运行程序(start 命令与 run 命令运行程序是有区别的)。
2. gdb调试开始运行程序
(1) 开始运行程序
gdb调试开始后,即可进行运行程序。终端输入start命令或run命令即可运行程序。
Linux下gdb调试提供了多种方式来启动目标程序。
输入 start 命令运行程序,如下所示:
输入 run 命令运行程序,如下所示:
(2) start与run命令的区别
gdb调试提供了多种方式来启动目标程序。run 命令或 start 命令都可以启动目标程序。
其中最常用的就是 run 指令,其次为 start 指令。
start 命令与 run 命令运行程序的区别如下:
1. start命令:会执行程序至 main() 主函数的起始位置,即在 main() 函数的第一行语句处停止执行(该行代码尚未执行)。
2. run命令:默认情况下,run 指令会一直执行程序,直到执行结束。如果程序中手动设置有断点,则 run 指令会执行程序至第一个断点。
gdb调试使用时,单步调试时,运行目标程序时,可使用 start 命令启动程序。
当希望目标程序自动运行时,可以使用 run 命令来启动程序。