GDB
介绍
GDB是GNU开源组织发布的一个强大的UNIX及类UNIX环境下的用户态程序调试工具,是C/C++程序调试的主流工具。
安装
在CentOS操作系统下,通过yum安装GDB。
yum install gdb //CentOS
使用方式
- 直接调试应用程序
gdb program
program为待调试的可执行文件。
- 调试应用程序的core文件
gdb program core
core为程序非法执行后core dump后产生的文件。
- GDB调试运行中的程序
gdb program $PID
PID为需要调试的程序PID号。
- GDB调试命令
(gdb) command *args
上述三种方式进入GDB调试页面,会出现(gdb),command是需要执行的调试命令(部分命令有简写),*args是部分调试命令需要的参数。
常用参数如下:
命令
用途
r
运行程序,当遇到断点后,程序会在断点处停止运行,等待用户输入下一步的命令。
c
继续执行,到下一个断点处。
n
单步跟踪程序,当遇到函数调用时,不进入此函数体,直接调用函数。
s
单步调试如果有函数调用,则进入函数。
until
运行程序直到退出循环体。
finish
运行程序,直到当前函数完成返回。
call
用程序中可见的函数,并传递“参数”。
l
查看源码;list n查看n行前后10行,list func查看函数源码。
b n
在n行处加断点。
b func
在函数func()的入口处设置断点。
clear n
清除第n行的断点。
父主题: 分析工具