(1) 调试器--Gdb调试流程
首先使用gcc对test.c进行编译,注意一定要加上选项‘-g’
# gcc -g test.c -o test
# gdb test
(2) Gdb调试流程
查看文件
(gdb) l
设置断点
(gdb) b 6
查看断点情况
(gdb) info b
运行代码
(gdb) r
查看变量值
(gdb) p n
单步运行
(gdb) n
(gdb) s
恢复程序运行
(gdb) c
帮助
(gdb) help [command]
(3)Gdb的使用切记点
在gcc编译选项中一定要加入‘-g’。
只有在代码处于“运行”或“暂停”状态时才能查看变量值。
设置断点后程序在指定行之前停止
(4)Gdb调试
运行被调试程序,设置所有的能影响该程序的参数和变量。
保证被调试程序在指定的条件下停止运行。
当被调试程序停止时,让开发工程师检查发生了什么。
根据每次调试器的提示信息来做响应的改变,以便修正某个错误引起的问题
gdb线程调试
(1)查看可切换调试的线程:info threads
(2)切换调试的线程:thread 线程id
(3)只运行当前线程:set scheduler-locking on
(4)运行全部的线程:set scheduler-locking off
(5)指定某线程执行某gdb命令:thread apply 线程id gdb_cmd
(6)全部的线程执行某gdb命令:thread apply all gdb_cmd