gcc 编译文件加上 -g 选项 生成可执行程序a,带有调试信息
对生成的文件执行 gdb a
就会进入调试程序
命令:
按l
查看代码,代码会带有行号 list
按b 10
将在第十行设置断点 breakpoint
i b
查看所有的断点
r
开始执行 run
c
继续执行 continue
n
next 单步调试,执行一行 n 10
执行10行
s
step in 单步调试 s 10
执行10行,遇到函数会进入
在遇到fork时,默认继续跟踪的是父进程
想要跟踪子进程,需要执行命令
set follow-fork-mode child/parent
默认为parent
set detach-on-fork on/off
默认为on,即fork分叉出的另一个进程与gdb分离,继续执行 off的话就会停在那,不分离
info inferiors
查看当前调试的进程
inferior id
切换为调试对应id的进程
detach inferiors id
使对应id的进程脱离gdb