GDB指令

  • set follow-fork-mode child,被调试进程执行 fork 时,自动 attach;
  • set scheduler-locking on,调试时,禁用线程切换,可选 on/off/step,默认 off;
  • symbol-file target.debug,添加独立的 debuginfo 文件;
  • i sharedlibrary,查看共享文件映射信息;
  • add-symbol-file libxx.debug ADDRESS,添加共享文件的 debuginfo 文件,ADDRESS 是共享文件的映射始址,由 i sharedlibrary 获得;
  • gcc test.cpp -g -g3,调试信息中保留 MACRO;
  • set logging on,GDB 的所有输入/输出都会被写入当前目录下的 gdb.txt;
  • set print pretty on,打印对象,尤其是结构体时,格式更加友好;
  • p $rip,打印 rip 寄存器;
  • i reg,查看寄存器集,i registers-all 显示全部寄存器;
  • display/i $rip,每次断点,打印下一条指令;
  • l *0×608048,显示某指令地址对应的代码行,可执行文件包含调试信息时,亦可用 addr2line;
  • x/40a $rsp,以地址形式打印 stack,栈乱掉时可救命;
  • return 0,停止调试当前函数,并以指定值返回;
  • p {tair::StorageManager}0×608048,将指定地址以某类型打印;
  • p *array@10,打印数组 array 的前十个元素;
  • gcore,将被调试进程 core dump,gcore 还是一个独立的命令,随 GDB 发布。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值