GDB调试

GDB调试

命令 解释
set print thread-events off 运行gdb时关闭线程事件
(gdb) set logging on 输入这个命令后,此后的调试信息将输出到指定文件
set logging enabled on/off
(gdb) set logging file <文件名> 设置输出的文件名称
(gdb) set logging off 输入这个命令,关闭到指定文件的输出
file <文件名> 加载被调试的可执行程序文件,因为一般都在被调试程序所在目录下执行GDB,因而文本名不需要带路径。
r Run的简写,运行被调试的程序,如果此前没有下过断点,则执行完整个程序;如果有断点,则程序暂停在第一个可用断点处。
c Continue的简写,继续执行被调试程序,直至下一个断点或程序结束。
info functions 列出函数的名字
b <行号> b: Breakpoint的简写,设置断点。两可以使用“行号”“函数名称”“执行地址”等方式指定断点位置,其中在函数名称前面加“*”符号表示将断点设置在“由编译器生成的prolog代码处”。如果不了解汇编,可以不予理会此用法。
b <函数名称>
b *<函数名称> d: Delete breakpoint的简写,删除指定编号的某个断点,或删除所有断点。断点编号从1开始递增。
b *<代码地址>
d [编号]
rbreak printNum* 对所有调用printNum函数都设置断点
rbreak . 对所有函数设置断点
rbreak test.c:. 对test.c中的所有函数设置断点
rbreak test.c:^print
tbreak test.c:l0 在第10行设置临时断点
ignore 1 30 设置跳过多次的断点,其中,1是要忽略的断点号,可以通过前面的方式查找到,30是需要跳过的次数。这样设置之后,会跳过前面30次。
watch a 设置一个一旦值发生变化就停止的断点.
info breakpoints 查看已设置的断点
p <变量名称> Print的简写,显示指定变量(临时变量或全局变量)的值。
i Info的简写,用于显示各类信息,详情请查阅“help i”。
q Quit的简写,退出GDB调试环境。
help [命令名称] GDB帮助命令,提供对GDB名种命令的解释说明,如果指定了“命令名称”参数,则显示该命令的详细说明;如果没有指定参数,则分类显示所有GDB命令,供用户进一步浏览和查询
Licensed under CC BY-NC-SA 4.0