Linux之基础开发工具gdb调试器的使用(三)

这篇具有很好参考价值的文章主要介绍了Linux之基础开发工具gdb调试器的使用(三)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

📘北尘_:个人主页

🌎个人专栏:《Linux操作系统》《经典算法试题 》《C++》 《数据结构与算法》

☀️走在路上,不忘来时的初心

一、Linux调试器-gdb使用

1、安装gdb

yum install -y gdb

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维
Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

2、背景

  1. 程序的发布方式有两种,debug模式和release模式
  2. Linux gcc/g++出来的二进制程序,默认是release模式,release模式下无法调试
  3. 要使用gdb调试,必须在源代码生成二进制程序的时候, 加上 -g 选项

release模式下的gdb演示,无法调试

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

加上 -g 选项,显然成功

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维
Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

3、Debug和release

Debug形成的可执行程序会给我们增加调试信息,内存变大,而release形成的可执行程序会给我们去掉调试信息,内存变小。
而用户不需要调试信息,他们需要更快的下载和安装,所以有了Dubug和release两个版本

4、区分Debug和release

release下的可执行程序

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维>Debug下的可执行程序

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

最直观区分

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维


二、Linux调试器-gdb命令演示

1、显示指定行之后的代码(自动记录最后一条指令)

想显示更多代码需 l+行号 然后一直回车
Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

2、断点

1、打印断点

打印断点一共三种方式,接下来一一介绍。

b+行号

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

b+函数名+行号
Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

b+文件名+行号(适用于多文件下)

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

2、查看断点

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

3、删除断点

注意在删除断点中,显示的是编号,而不是行号。
Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

4、使能(禁用/开启)断点

禁用

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

开启

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

3、直接运行结束

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

4、逐过程(f10)、逐语句(f11)

逐过程

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

逐语句

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

5、显示内容

只显示一次

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

常显示

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

取消常显示

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

6、范围查找

切换下一个断点

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

将函数运行结束

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

在一个指定范围内,运行到指定行

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

7、查看调用堆栈

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维


总结

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维

Linux之基础开发工具gdb调试器的使用(三),Linux操作系统,linux,服务器,运维文章来源地址https://www.toymoban.com/news/detail-755141.html

到了这里,关于Linux之基础开发工具gdb调试器的使用(三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 『Linux升级路』基础开发工具——gdb篇

    🔥 博客主页: 小王又困了 📚 系列专栏: Linux 🌟 人之为学,不日近则日退 ❤️ 感谢大家点赞👍收藏⭐评论 ✍️ 目录 一、背景知识介绍 二、gdb指令介绍      在软件开发中,通常会有两种主要的构建配置:Debug(调试)和Release(发布)。这两种配置的存在是为了在不同

    2024年02月04日
    浏览(43)
  • 【Linux取经路】基础开发工具——gdb篇

    程序的发布方式有两种, Debug 模式和 release 模式。Debug是开发者模式,而用户最终使用的是release。Debug模式下的代码,可以被追踪、调试,因为在Debug模式下形成的可执行程序,里面添加了debug信息。这意味着,以Debug模式下得到的可执行程序,一定比release模式下得到的可执行

    2024年02月14日
    浏览(40)
  • 【Linux】自动化构建工具--make/Makefile&&调试器--gdb的使用

    一个工程的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作。 makefile带来的好处就是– “自动化编译” ,一旦写好,就只

    2024年02月08日
    浏览(48)
  • 调试器加载错误,从任务栏打开可能会导致该问题(微信开发者工具)

    在使用HBuilder X 3.6.4 运行微信小程序的时候,发现报错如下: [微信小程序开发者工具] × #initialize-error: [error] 工具的服务端口已关闭。要使用命令行调用工具,请在下方输入 y 以确认开启,或手动打开工具 - 设置 - 安全设置,将服务端口开启。     尝试了手动开启服务端口之

    2024年02月15日
    浏览(55)
  • 【探索Linux】—— 强大的命令行工具 P.6(调试器-gdb、项目自动化构建工具-make/Makefile)

    前面我们讲了C语言的基础知识,也了解了一些数据结构,并且讲了有关C++的一些知识,也学习了一些Linux的基本操作,也了解并学习了有关Linux开发工具vim 、gcc/g++ 使用、yum工具以及git 命令行提交代码也相信大家都掌握的不错,今天博主带大家了解一下 —— Linux系统下的调试

    2024年02月12日
    浏览(38)
  • 【Linux】--- Linux编译器-gcc/g++、调试器-gdb、项目自动化构建工具-make/Makefile 使用

    格式: gcc [选项] 要编译的文件 [选项] [目标文件] , gcc / g++ 安装: sudo yum install -y gcc-c++ 。安装后的编译器默认的版本是较低的,我们可以 使用选项 -std=c99 (即使用c99标准), -std=c++11 (即使用c++11的标准)来进行版本提升 。使用 -o 选项,可以将编译生成的可执行重命名

    2024年03月10日
    浏览(103)
  • Linux开发工具大全 - 软件包管理器yum | vim编辑器 | gcc/g++编译器 | 自动化构建工具Make/Makefile | gdb调试工具

    目录 Ⅰ.  Linux 软件包管理器 yum 一、yum 背景知识 二、yum 的基本使用 1、查看软件包 2、软件包名称构成 3、安装软件 4、卸载软件 Ⅱ.vim编辑器  一、认识vim 1、vim概念  2、模式及其切换  二、vim使用 1、vim的指令(重要)  命令模式 插入模式 底行模式 2、vim配置 Ⅲ.gcc/g++编

    2024年02月05日
    浏览(55)
  • 【Linux】Linux环境基础开发工具的使用 ———(yum、vim、gcc&g++、gdb、make/Makefile、进度条 、git)

    (꒪ꇴ꒪(꒪ꇴ꒪ )🐣,我是 Scort 🎓 🌍博客主页:张小姐的猫~江湖背景🌍 快上车🚘,握好方向盘跟我有一起打天下嘞! 送给自己的一句鸡汤🤔: 🔥集中起来的意志可以击穿顽石🔥 🙏作者水平很有限,如果发现错误,可在评论区指正,感谢🙏 🎉🎉欢迎持续关注!🎉🎉

    2024年01月16日
    浏览(53)
  • Linux - 还不懂 gdb 调试器?(调试软件)

    当前,我们可以使用 make/makefile 来程序化执行代码文件;可以使用 gcc/g++ 等编译器来编译代码;可以使用 vim 编辑器来编写代码;其实在 Linux 当中还有一个工具,可以实现调试工作,这个工具就是 -- gdb。 在了解调试器之前,你应该对代码的发布版本做一些了解: 我们在 VS

    2024年02月07日
    浏览(54)
  • Linux——gdb调试器

    目录    前言: 二.gdb定义及指令: 如何查看该exe文件是否为Debug版本?两种方法: 三.gdb调试:         调试指令1:l指令(小写L) run指令:运行程序,相当于VS中的直接运行不调试——可简化输入r  break指令:设置断点——指令可简化输入为b ​编辑  info b指令:查看整个代码

    2024年02月07日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包