最近调试nginx源码,使用到了gdb,为方便以后调试使用。 整理了一些常用命令。
启动项目并断点
|
start
|
打临时断点
|
tb
|
打断点
|
b
|
根据代码行位置设置断点
|
b src/http/ngx_http_request.c:208
|
根据函数名设置断点
|
b func_name
|
根据运行时的地址设置断点
|
b *0x5859c0
|
查看断点列表
|
info break
|
查看函数堆栈
|
bt
|
列出代码
|
l
|
单步运行
|
n
|
进入函数调试
|
step
|
跳出函数
|
finish
|
继续运行
|
c
|
去掉某个断点
|
delete xx
|
fork的时候进入子进程
|
set follow-fork-mode child
|
fork的时候进入父进程
|
set follow-fork-mode parent
|
当前文件正向查找
|
search xxx
|
当前文件反向查找
|
reverse-search xxx
|
当前函数局部变量的值
|
info locals
|
打印变量值
|
p xxx
|
退出gdb
|
q
|
如果要查询更多使用命令可以参考这个地址:
https://github.com/hellogcc/100-gdb-tips/blob/master/src/index.md