Linux基础开发工具之调试器gdb
- 人工智能
- 2025-08-13 06:24:02

文章目录 1.编译成的可调试的debug版本1.1gcc test.c -o testdebug -g1.2readelf -S testdebug | grep -i debug 2.调试指令2.0quit退出2.1list/l/l 数字: 显示代码2.2run/r运行2.3断点相关1. break num/b num: 设置2. info b: 查看3. d index: 删除4. n: F10逐过程5. p + 变量名: 调试过程显示变量信息6. step/s : F11:逐语句7. bt: 调用堆栈8. finish: 运行完成当前函数 并返回调用此函数的位置9. display + 变量名: 显示变量的值直到他被取消10. undisplay + 编号: 取消常显示11.until + num: 跳转到指定行 (当前栈帧)12.continue/c: 运行至下一个断点停止13. disable + 编号: 禁用当前断点13. enable + 编号: 取消禁用当前断点14. set var i = 100: 改变变量值 1.编译成的可调试的debug版本 1.1gcc test.c -o testdebug -g
gcc && g++ 默认形成的可执行程序是release版本 ---- 无法直接被调试
1.2readelf -S testdebug | grep -i debugreadelf 用于读取 ELF(Executable and Linkable Format)格式文件的详细信息,包括目标文件、可执行文件、共享目标文件与核心转储文件。
2.调试指令 2.0quit退出退出
2.1list/l/l 数字: 显示代码可视化差
从第一行开始显示
2.2run/r运行≈ F5 若没有断点 则直接运行结束
2.3断点相关 1. break num/b num: 设置在num行打断点
2. info b: 查看 3. d index: 删除index: 断点的编号
4. n: F10逐过程 5. p + 变量名: 调试过程显示变量信息 6. step/s : F11:逐语句 7. bt: 调用堆栈 8. finish: 运行完成当前函数 并返回调用此函数的位置 9. display + 变量名: 显示变量的值直到他被取消 10. undisplay + 编号: 取消常显示 11.until + num: 跳转到指定行 (当前栈帧) 12.continue/c: 运行至下一个断点停止 13. disable + 编号: 禁用当前断点断点仍然还存在 只不过禁用 Enb状态变为n(no)
13. enable + 编号: 取消禁用当前断点Enb状态变为y(yes)
14. set var i = 100: 改变变量值调试过程中 改变已有变量i的值
Linux基础开发工具之调试器gdb由讯客互联人工智能栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Linux基础开发工具之调试器gdb”