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
(3)下断点
b + 行数或函数名
如 b main (在main函数下处断点)或者 b 6(在第六行下断点)
使用 info breakpoints
查看断点
(4)输入:r
开始运行
(5)向下运行
" n
" :执行一条语句,碰到函数会直接运行函数
" s
“:执行下一条语句,碰到函数会进入到函数中
" p + 变量名”:查看运行中程序的变量
结果结果会在上方展示
(6)退出
输入q
退出调试
至此
学识浅薄,简单介绍一下gdb工具
希望可以帮到您。。。