Debug hacks--gdb调试

2019-04-08  本文已影响0人  宠娃的码农

gdb流程如下:

1. 带着调试选项编译,构建调试对象。

2. 启动调试器。

2.1. 设置断点。

2.2.显示栈帧。

2.3.显示值。

2.4继续执行。

1. gcc一些选项

-g 调试信息

CFLAGS = -Wall -O2 -g

-Werror  告警当错误处理

2.启动

1)gdb进程名

2)gdb -c corename

  然后file 进程名, file debug文件名

3)gdb -e 可执行名-c core文件-s debug文件

3. 设置断点

1)break 函数名

2)break 行号

3)break 文件名:行号

4)break文件名:函数名

5)break+偏移量

6)break-偏移量 (当前暂停位置)

7)break *地址

8)b 下一行设置断点。

info break可以查看哪些断点。

set args xxx

run 执行

bt显示栈帧 bt N/-N 显示开头/最后几个栈帧

print val显示变量

info reg显示寄存器的值

p $eax显示寄存器值。

上一篇下一篇

猜你喜欢

热点阅读