Linux中调试工具GDB(安装到入门)

19 篇文章 0 订阅
订阅专栏

GDB介绍

gdb是一款代码调试工具,使用命令行方式进行代码的调试


使用GDB的准备事情

我们先使用vim创建一个源文件vim mycode.c,完成一个乘法程序

在这里插入图片描述
使用Makefile自动化构建工具进行代码的预处理、编译、汇编、链接、清理工作
在这里插入图片描述
gcc默认编译成功之后生成的可执行程序是release版本的,需要添加上 -g 选项才可以生成debug版本的可执行程序

接下来我们使用make命令自动化编译代码生成mycode可执行文件
在这里插入图片描述
万事俱备只欠GDB
小问题:如果使用 gdb --version 显示在这里插入图片描述
说明你当前系统中没有安装gdb 使用sudo yum install gdb安装


启动gdb

gdb 可执行文件的名字 进入gdb工具
在这里插入图片描述


GDB常用命令

  • 查看程序源代码
list/l 行号:显示binFile源代码,接着上次的位置往下列,每次列10//例:l 0 查看第0行以及往后10行的代码 
  • 开始运行程序,直到遇到“断点”或者“结束”:
r(run) 
  • 设置断点
输入 break(b)+数字 可以对程序进行断点操作(数字就是设置断点的代码行数)
  • 查看断点信息
 输入 info breakpoints 即可查看断点信息

在这里插入图片描述

  • 单步执行

next(n):单步执行程序,但是遇到函数时会直接跳过函数,不进入函数
step(s):单步执行程序,但遇到函数会进入函数
continue:继续执行程序,直到遇到断点或结束

  • 删除断点
delete breakpoints:删除所有断点
delete breakpoints n:删除序号为n的断点

在这里插入图片描述


退出GDB

输入quit(q)
在这里插入图片描述

linuxgdb入门使用教程
01-20
前言 gdblinux下非常好用的一个调试工具,虽然它是命令行模式的调试工具,但是它的功能强大到你无法想象,这里简单介绍下gdb的使用方法,需要的朋友们下面来一起看看详细的介绍吧。 断点 在代码的指定位置断,使程序在此断。 break <function> 在进入指定函数时停住 break <linenum> 在指定行号停住。 break +/-offset 在当前行号的前面或后面的offset行停住。offiset为自然数。 break filename:linenum 在源文件filename的linenum行处停住。 break … if <condition
Linux调试工具GDB使用简易教程
09-15
Linux操作系统,开发和调试软件是必不可少的工作环节,而GDB(GNU Project Debugger)是一个强大的工具,它允许开发者对C和C++程序进行调试GDB提供了丰富的功能,如设置断点、单步执行、查看变量值、检查内存...
Linuxgdb安装、执行与调试
qq_53830608的博客
08-11 3173
在编译阶段会加入某些调试信息release版本 //linux默认,给用户,发行版本,没有调试1信息。undisplay display的编号 :取消一个display。info b / info break 查看断点信息。delete 断点编号 : 删除断点。当再次输入为如下界面,即安装成功。调试信息是在编译过程加入到间文件.o文件的。gdb test 进入调试。b+函数名 加断点到入口处。debug是给程序员使用的。display :自动打印。b +行号: 加断点。r: 运行,启动程序。..
软件调试 · 工具类 · GDB调试基础操作
最新发布
m0_49927539的博客
03-26 1069
GDB是GNU项目的一个调试器,它允许开发者在程序执行时或崩溃时查看程序内部发生的情况。GDB的主要功能包括启动程序、在特定条件下停止程序、检查程序停止时的状态以及在程序更改内容以实验修复错误。
Ubuntu之云服务器Ubuntu初始化配置
Cabbage
03-04 888
云服务器Ubuntu实话配置 修改云镜像源 # deb cdrom:[Ubuntu 20.04.1 LTS _Focal Fossa_ - Release amd64 (20200731)]/ focal main restricted # See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to # newer versions of the distribution. deb http://mirrors.aliy
Linuxgdb安装及使用入门
weixin_33937499的博客
01-13 604
1、安装gdb。 在root用户权限下: root@iZ2zeeailqvwws5dcuivdbZ:~# apt-get update ...... ...... ...... root@iZ2zeeailqvwws5dcuivdbZ:~# apt-get install gdb ...... ...... ...... Do you want to...
Linux】如何安装gdb调试器 超实用!!
Miss_Monster的博客
02-25 2193
1.卸载旧版本 首先我们需要检查系统有没有安装gdb,有的话用一下命令卸载gdb旧版本。 2.安装Texinfo文档系统 先用su切换到root模式,然后执行yum命令 3.下载安装包 4.解压 5. (./configure)进入全局配置模式 6.make 这个过程有点点久,耐心等待....不过这一行行代码真的看着超厉害的像电影里的黑客一样hhh~~~国产...
gdb安装
qq_42108074的博客
03-25 149
将源代码翻译成二进制文件,然后使用。上边是用来调试的代码。
GDB安装
weixin_42549534的博客
08-12 384
选择8.3版本(交叉编译无需依赖其他库,7.x版本依赖ncurses库还需编译麻烦)
linuxGDB调试CC++入门.pdf
10-14
Linux GDB 调试 C++ 入门 GDB 是 GNU 开源组织发布的一个强大的 UNIX 下的程序调试工具。它可以帮助开发者完成四个方面的功能:启动程序、设置断点、检查程序状态和动态改变执行环境。与图形化调试工具相比,GDB ...
Linux基本反汇编结构与GDB入门.doc
11-28
"Linux基本反汇编结构与GDB入门" Linux基本反汇编结构是指在...Linux基本反汇编结构与GDB入门是指在Linux操作系统对汇编语言的基本结构和GDB调试器的使用方法。通过学习这些知识点,我们可以更好地编写和调试程序。
gdb安装rpm包
02-09
redhat和centos6以上版本均可安装,32位,64位都有。
centos上gdb安装及给普通用户进行提权
k5426244的博客
04-11 3211
gdb安装及使用
Linux调试器-gdb的使用说明(调试器的配置,指令说明,调试过程说明)
dhgiuyawhiudwqha的博客
03-21 1174
在软件开发,通常会为程序构建两种不同的版本:Debug模式和Release模式。它们之间的区别主要在于优化级别、调试信息、错误检查等方面
Linux】——调试器-gdb的使用
m0_56069910的博客
05-31 3489
Linux】——调试器-gdb的使用
GDB安装与在嵌入式平台的使用
u010584870的博客
07-16 1266
GDB在嵌入式平台的应用
linux之《调试工具gdb
qq_56166591的博客
01-16 257
linuxgdb的基本使用(指令,认识),图文并茂
GDB调试工具
liuasdfgqwer的博客
08-30 1444
GDB调试工具
Linux嵌入式开发入门教程
03-30
Linux嵌入式开发是指在嵌入式系统使用Linux操作系统进行开发。Linux操作系统具有开放性、可定制性、模块化等特点,使得它成为了嵌入式系统开发最流行的操作系统之一。 本教程将以树莓派作为开发板,介绍Linux嵌入式开发的基础知识和实践。 准备工作: 1. 树莓派开发板 2. SD卡 3. 电脑 4. USB转串口工具 5. HDMI显示器和键盘(可选) 步骤1:安装Linux系统 1. 下载Raspberry Pi官方提供的系统镜像,可以从官网上下载:https://www.raspberrypi.org/downloads/ 2. 解压镜像文件,并将其写入SD卡。可以使用Rufus等工具进行写入。 3. 将SD卡插入树莓派,连接电源和USB转串口工具。 步骤2:连接串口 1. 在电脑上安装串口调试工具,如SecureCRT、Putty等。 2. 打开串口调试工具,设置串口号和波特率,连接树莓派。 3. 在串口调试工具输入用户名和密码登录树莓派。 步骤3:配置网络 1. 使用ifconfig命令查看树莓派的IP地址。 2. 在电脑上打开SSH客户端,如SecureCRT、Putty等。 3. 输入树莓派的IP地址和用户名、密码,即可在电脑上远程登录树莓派。 步骤4:开发环境搭建 1. 安装开发工具链,如gcc、g++等。 2. 安装调试工具,如gdb。 3. 安装版本控制工具,如git。 4. 安装构建工具,如make。 步骤5:开发应用程序 1. 创建一个简单的C程序,如Hello World。 2. 使用gcc编译程序,生成可执行文件。 3. 在树莓派上运行可执行文件,验证程序是否正常运行。 总结: 本教程介绍了Linux嵌入式开发的基础知识和实践。通过学习本教程,您可以了解Linux操作系统在嵌入式系统的应用,学习如何使用树莓派进行开发,掌握基本的开发工具和技巧。希望本教程能够对您有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 意想不到的 sprintf 函数【入门到进阶】 4559
  • 【Linux】应用层协议:HTTP 2980
  • 【Linux】协议定制+序列化和反序列化 2604
  • 讨论scanf()中%d后面的空格对输入的影响 1647
  • UDP网络套接字编程 1451

分类专栏

  • C/C++项目 1篇
  • LeetCode 67篇
  • Linux 19篇
  • QT 2篇
  • C++ 28篇
  • 数据结构与算法 9篇
  • c语言 14篇

最新评论

  • 【二叉树】Leetcode 在每个树行中找最大值

    普通网友: 文章内容通俗易懂,适合不同层次的读者。【我也写了一些相关领域的文章,希望能够得到博主的指导,共同进步!】

  • 【项目】Boost搜索引擎

    普通网友: 博主的文章让我对这个主题有了全新的认识,细节描写非常到位,让我感受到了博主的深厚功底。【我也写了一些相关领域的文章,希望能够得到博主的指导,共同进步!】

  • 哈希应用之位图+布隆过滤器

    CSDN-Ada助手: 不知道 算法 技能树是否可以帮到你:https://edu.csdn.net/skill/algorithm?utm_source=AI_act_algorithm

  • 意想不到的 sprintf 函数【入门到进阶】

    皮蛋的小世界: 能帮到你那就好,哈哈哈

  • 意想不到的 sprintf 函数【入门到进阶】

    流火极光: 其实方便的理解就是sprintf是printf的进阶版 printf 是把内容输出到屏幕前 sprintf 是把内容输出到字符串里

大家在看

  • C++标准模板(STL)- 迭代器库-迭代器适配器 - 创建拥有从实参推出的类型的 std::back_insert_iterator 305
  • Vue2.0和Vue3.0有什么区别
  • 一起学python,挑战年薪30w 138
  • Java 的多线程和并发处理,在项目中是如何使用它? 438
  • Maven深度解析:Java项目构建

最新文章

  • 【优先级队列】Leetcode 最后一块石头的重量
  • 【二叉树】Leetcode 在每个树行中找最大值
  • 【二叉树】Leetcode 二叉树的锯齿形层序遍历
2024
05月 13篇
04月 45篇
03月 20篇
02月 3篇
01月 8篇
2023年46篇
2022年4篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

深圳SEO优化公司龙华seo罗湖网站优化排名坑梓网站优化排名龙岗SEO按天扣费石岩网页设计光明网站制作大浪关键词按天计费龙华建网站罗湖如何制作网站木棉湾网站关键词优化宝安网站建设设计大浪企业网站建设坂田推广网站福永百度网站优化排名吉祥网页制作广州百度竞价大运设计公司网站坪山网站定制南联SEO按效果付费松岗模板推广永湖企业网站改版大运营销型网站建设双龙网站推广工具观澜网站制作设计大浪网站优化宝安百度爱采购龙岗网站推广系统南联网站设计南联网站设计模板光明关键词排名包年推广歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化