public:it:gdb

这是本文档旧的修订版!


GDB

  • 需要有调试符号,gcc 或 g++ 编译时带 -g 参数
  • 可用 file <your-file> 来查看是否带了调试符号
  • gdb 里使用info sharedlibrary命令查看库符号加载
  • set args
  • 如果进入某个函数直接崩溃报错, bt栈只显示到该函数地址,很大可能是改函数内栈溢出(一般是8M),查看变量或数组是否过大。
  • 崩溃时,查看变量:
    • bt 显示栈信息
    • frame 0 进入最顶部栈
    • info local 打印所有局部变量
    • p <name> 打印某个变量,可打印全局变量
指令 简写 说明
help h 查看帮助文档
run r 执行程序
break b 打断点
info break info b查看断点
step s 步进、进入内部
next n 执行下一行
bt bt 查看栈调用信息
print p 查看变量等
list l 查看当前代码
info source 查看当前源码文件
info sources 查看源码文件
continue c 继续执行
quit q 退出gdb
  • public/it/gdb.1706076353.txt.gz
  • 最后更改: 2024/01/24 14:05
  • oakfire