现在的位置: 首页 > 综合 > 正文

GDB使用备忘

2014年02月17日 ⁄ 综合 ⁄ 共 646字 ⁄ 字号 评论关闭

调试带参数的程序

$ gdb program
(gdb) run param

 
使用core dump调试

首先打开core dump

ulimit -c unlimited

core文件产生后,使用core dump

gdb  --core=core.XXX

 
设置watch point

(gdb) watch *((int*)0x00ABCDEF)

查看反汇编代码
disas或者x/40x addr

将gdb中的输出重定向到文件
http://blog.csdn.net/ariesjzj/article/details/7419479 

指定源文件目录

dir命令可以指定源码地址,从而达到源码级的调试。但如果是交叉编译环境,很有可能编译和调试不是同个环境,如果可执行文件的调试信息中记录的绝对路径,那么可以用set substitute-path替换路径。详见 http://blog.csdn.net/zhangxinrun/article/details/5573636

线程创建或退出时打印信息
(gdb) show print thread-events [on | off]

查看段
(gdb) info files

查看进程的内存映射和命令行
(gdb)info proc all

设置内存区域访问属性
例:(gdb) mem 1 1024

显示c++符号的demangle形式
(gdb)set print demangle on
(gdb)set print asm-demangle on

显示真实类型而非声明类型
(gdb) set print object on

把数据从内存倒到文件
dump

抱歉!评论已关闭.