用户工具

站点工具


gdb_notes

GDB 笔记

Resource

命令

调试

命令行 attach

  • gdb debugee pid

命令

  1. file debugee 加载待调试程序
  2. attach pid
  3. detach

core dump 分析

  • gdb debugee dump_file

下断点

  • break/b [filename:]line[if expression]
  • b [filename:]function[if expression]
  • tbreak 设置只生效一次的临时断点
  • watch 数据改变断点
  • awatch 数据读取/改变断点
  • continue/c 从断点处继续运行
  • condition number expression 设置某断点的中断条件

显示断点

  • info break

删除断点

  • delete [number] 不加数字删除所有断点
  • clean line 删除某代码行上的所有断点

禁用/启用断点

  • disable number
  • enable number
  • ignore number times 忽略某断点几次

单步

  • next 单步而不进入函数调用
  • step 单步进入函数调用
  • finish 从函数中返回到调用它的地方
  • jump line 让程序跳到制定的代码行运行

其它

  • backtrace/bt & where 显示当前位置和调用栈
  • set var=val 给变量赋值
  • until 结束当前循环
  • up 上移调用栈帧
  • down 下移调用栈帧
  • frame 显示调用栈帧
  • select-frame 选择调用栈帧
  • whatis x 显示变量或函数的类型
  • ptype 显示结构体的定义
gdb_notes.txt · 最后更改: 2013/01/18 04:19 由 2ndboy