GDB调试技巧汇总(2019.05.30up)

本文介绍了GDB调试器的一些高级用法,包括通过配置文件快速设置常用命令、使用脚本进行远程调试连接、利用examine命令查看内存值、设置断点触发动作以及如何控制信号等。这些技巧能够帮助开发者更高效地进行程序调试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不写基礎教程,只记关键功能;

1.启动时候可以gdb -x ./gdbinit.file 命令来导入重复设置的命令:

set pagination off 

set disassemble-next-line on

set breakpoint pending on

set stop-on-solib-events 0
show stop-on-solib-events
b sigaction
b __pthread_start
break JNI_OnLoad

提前打好断点

2. gdb -x "target remote :12345"包个脚本来每次连远程调试,写成脚本。

3.可以使用examine命令(简写是x)来查看内存地址中的值。x命令的语法如下所示:

x/<n/f/u> <addr>

n、f、u是可选的参数。

n是表示 输出几次

f为格式;包括:

u为 这个格式多少内存空间。

例子:

x/10w2

gdb默认AT

set disassembly-flavor intel

disa

find /b1 $r1,+10000,0xad

寄存器 info registers

4.commands命令来设置断点触发动作:

如图:

5. set $r0 9 来修改寄存器

6.控制信号:

处理信号:

(gdb) handle SIGSTOP
Signal        Stop      Print   Pass to program Description
SIGSTOP       Yes       Yes     Yes             Stopped (signal)

命令可以写的配置有 "stop", "nostop", "print", "noprint","pass", "nopass", "ignore", or "noignore".

(gdb)handle SIGSTOP stop print pass 

 

 

2018.03.13up

2019.05.29up添加rc配置文件

2019.05.30up 添加信号控制.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值