Linux—gdb调试简单实现

本文介绍了GDB,一个强大的UNIX下程序调试工具,用于启动、设置断点、检查程序状态和改变执行环境。通过安装GDB增强工具如gef,调试体验得到提升。简单步骤包括:带-g选项编译、启动GDB、设置断点、运行程序、单步执行并查看变量。学会GDB对于Linux内核和用户空间应用的调试至关重要。

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

1.GDB简述

GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具,GDB主要可帮助工程师完成下面4个方面的功能:

(1)启动程序,可以按照工程师自定义的要求随心所欲的运行程序。
(2)让被调试的程序在工程师指定的断点处停住,断点可以是条件表达式。
 (3)当程序被停住时,可以检查此时程序中所发生的事,并追索上文。
 (4)动态地改变程序的执行环境。

不管是调试Linux内核空间的驱动还是调试用户空间的应用程序,掌握gdb的用法都是必须。

2.安装GDB增强工具

gdb工具时系统自带的,但是为了更方便使用,建议 从git上面下载一些插件
联网Linux系统下安装git:sudo apt-get install git

git clone https://github.com/gatieme/GdbPlugins.git ~/GdbPlugins 

克隆完之后,会在你当前目录下面有GdbPlugins 这个文件
当你想要用某一个GdbPlugins下层目录中某一插件的时候,只要输入对应命令就行

这里我们主要使用gef 我们执行

echo "source ~/GdbPlugins/gef/gef.py" > ~/.gdbinit 

3.简单使用

(1)编译

编译后面加**-g**
在这里插入图片描述

(2)启动GDB

gdb + 生成文件名

如 gdb demo

如:gdb demo![在这里插入图片描述](https://img-blog.csdnimg.cn/20201224115839171.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0Fhcm9ubHh4,size_16,color_FFFFFF,t_70

(3)下断点

b + 行数或函数名
如 b main (在main函数下处断点)或者 b 6(在第六行下断点)
使用 info breakpoints 查看断点

在这里插入图片描述

(4)输入:r

开始运行

在这里插入图片描述
在这里插入图片描述

(5)向下运行

" n " :执行一条语句,碰到函数会直接运行函数
" s “:执行下一条语句,碰到函数会进入到函数中
" p + 变量名”:查看运行中程序的变量

结果结果会在上方展示

(6)退出

输入q退出调试

在这里插入图片描述
至此

学识浅薄,简单介绍一下gdb工具
希望可以帮到您。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值