成都网站建设技术如何创建一个公司网站
前言:上一篇文章中我们讲解了Linux下的gcc与g++的使用,今天我们将进一步的学习gdb与makefile来帮我们更好的理解与使用基础开发工具。
💖 博主CSDN主页:卫卫卫的个人主页 💞
👉 专栏分类:Linux的深度刨析 👈
💯代码仓库:卫卫周大胖的学习日记💫
💪关注博主和博主一起学习!一起努力!
目录标题
- Linux下基础开发工具
 - gdb调试方法
 - 1.启动gdb
 - 2.查看源代码
 - 3.运行程序
 - 4.设置断点
 - 5.查看断点信息
 - 6.执行下一行代码。
 - 7.查看变量
 - 8.退出gdb
 
Linux下基础开发工具
gdb调试方法
程序的发布方式有两种,debug模式和release模式
 Linux gcc/g++出来的二进制程序,默认是release模式
 要使用gdb调试,必须在源代码生成二进制程序的时候, 加上 -g 选项
 GDB是一个用于调试程序的强大工具,可以运行在Linux操作系统下。在Linux中,你可以通过以下步骤来安装和使用GDB:
- 打开终端。
 - 输入以下命令以安装GDB:
sudo apt-get install gdb(请注意,这需要管理员权限)。 - 安装完成后,你可以通过输入
gdb命令来启动GDB调试器。 - 接下来,你需要指定要调试的可执行文件。例如,如果你要调试一个名为
program的程序,可以使用命令gdb program。 - GDB将会启动并等待你输入调试命令。你可以使用命令
run来运行程序,然后使用其他命令来设置断点、查看变量的值等等。 
以下是一些常用的GDB命令:
-  
list或l:查看源代码 -  
break或b:设置断点。 -  
info breakpoints:显示断点信息 -  
run或r:运行程序。 -  
continue或c:继续执行程序。 -  
next或n:执行下一行代码。 -  
step或s:单步执行程序,进入函数调用。 -  
print或p:打印变量的值。 -  
backtrace或bt:显示函数调用的堆栈跟踪。 -  
quit或q:退出GDB调试器。 -  
display 表达式:在单步运行时将非常有用,使用display命令设置一个表达式后,它将在每次单步进行指令后,紧接着输出被设置的表达式及值。如:display n -  
watch 表达式:设置一个监视点,一旦被监视的“表达式”的值改变,gdb将强行终止正在被调试的程序。如:watch n(查看变量n) -  
whatis:查询变量或函数 -  
info function: 查询函数 -  
扩展
info locals: 显示当前堆栈页的所有变量 
这只是GDB的一些基本用法,GDB提供了很多功能,你可以通过查阅GDB的文档来了解更多详细的使用方法。
1.启动gdb
对于任何一个文件,必须在源代码生成二进制程序的时候, 加上 -g 选项
 实例演示:
 对文件test.c的文件进行调试,调试的文件命名为test:gcc -g test.c -o test
 启动gdb,命令如下:(两种方式)
gdb test //启动调试名称为test的文件,但是会显示版本信息
gdb -q test //表示不打印gdb版本信息,界面较为干净;
 
运行图:
 
 无版本信息指令:
 
2.查看源代码
list或l:查看源代码
 实例演示:
 
3.运行程序
run或r:运行程序。
 实例演示:
 
4.设置断点
break或b:设置断点, b 行号
 删除断点:delete break_num
 实例演示:
 
5.查看断点信息
info breakpoints :显示断点信息
 实例演示:
 
6.执行下一行代码。
next或n:执行下一行代码。
 step或s:单步执行程序,进入函数调用。
 重复上一条命令:按下回车 。即每一次重复执行上一条指令时,不需要重复输入,只需回车即可。
 附:报错”The program is not being run.”
 程序没有自动开始运行,此时输入 start 即可开始调试,注意不要使用 run 命令
 实例演示:
 
7.查看变量
print或p:打印变量的值。
 实例演示:

8.退出gdb
quit或q:退出GDB调试器。
 
 这只是GDB的一些基本用法,GDB提供了很多功能,你可以通过查阅GDB的文档来了解更多详细的使用方法。
好啦,今天的内容就到这里啦,下期内容预告make/makefile、进度条的讲解
结语:今天的内容就到这里吧,谢谢各位的观看,如果有讲的不好的地方也请各位多多指出,作者每一条评论都会读的,谢谢各位。

