GDB 调试指令

 GDB 调试指令

run(或 r):启动程序的执行,或者重新启动程序的执行。如果之前已经运行过程序,使用 run 将重新开始执行。

continue(或 c):继续执行程序,直到下一个断点或程序结束。

break(或 b):设置断点。可以在指定的文件名和行号上设置断点,或者在函数名上设置断点。

break file.c:10:在 file.c 文件的第 10 行设置断点。
break function_name:在名为 function_name 的函数入口处设置断点。
delete(或 d):删除断点。可以指定断点编号或使用 delete 命令删除所有断点。

delete 1:删除断点编号为 1 的断点。
info breakpoints(或 i b):显示当前设置的断点列表。

step(或 s):单步执行程序,逐行执行,并进入函数内部。

next(或 n):单步执行程序,逐行执行,但不进入函数内部。

finish:执行当前函数的剩余部分,然后停止在调用函数的位置。

print(或 p):打印变量的值或表达式的结果。

print variable_name:打印变量 variable_name 的值。
print expression:计算并打印表达式的值。
backtrace(或 bt):显示当前的函数调用栈。

quit(或 q):退出 GDB 调试器。

 

 

arm-none-eabi-gdb example.elf

tar ext:50000

i b   //查看所有断点

i r   //查看内存寄存器

break 16     //设置断点,在源程序第16行处。

break func   //设置断点,在函数func()入口处

info break   //查看断点信息。

list       //查看调试文件

n         //单步命令,next命令简写。

r         //全速运行,run命令简写

          //直接回车表示,重复上一次命令

disassemble  //查看执行到哪一条指令

c        //继续运行程序,continue命令简写。

bt       //查看函数堆栈。

finish    //退出函数。

p i      //打印变量i的值,print命令简写。

bt   /查看调用堆栈

info  registr //查看寄存器

delete break 1  //删除第1个断点,要是删除没有的断点,就会提示No breakpoint number 你写错的断点号。\

run 1 2 3  //开始调试后,发现直接到了第4个断点处

 

posted @   第9527号嵌入式菜鸟  阅读(166)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示