当前位置: 首页 > news >正文

Linux基础开发工具之调试器gdb

文章目录

  • 1.编译成的可调试的debug版本
    • 1.1gcc test.c -o testdebug -g
    • 1.2readelf -S testdebug | grep -i debug
  • 2.调试指令
    • 2.0quit退出
    • 2.1list/l/l 数字: 显示代码
    • 2.2run/r运行
    • 2.3断点相关
      • 1. break num/b num: 设置
      • 2. info b: 查看
      • 3. d index: 删除
      • 4. n: F10逐过程
      • 5. p + 变量名: 调试过程显示变量信息
      • 6. step/s : F11:逐语句
      • 7. bt: 调用堆栈
      • 8. finish: 运行完成当前函数 并返回调用此函数的位置
      • 9. display + 变量名: 显示变量的值直到他被取消
      • 10. undisplay + 编号: 取消常显示
      • 11.until + num: 跳转到指定行 (当前栈帧)
      • 12.continue/c: 运行至下一个断点停止
      • 13. disable + 编号: 禁用当前断点
      • 13. enable + 编号: 取消禁用当前断点
      • 14. set var i = 100: 改变变量值

1.编译成的可调试的debug版本

1.1gcc test.c -o testdebug -g

gcc && g++ 默认形成的可执行程序是release版本 ---- 无法直接被调试
在这里插入图片描述

1.2readelf -S testdebug | grep -i debug

readelf 用于读取 ELF(Executable and Linkable Format)格式文件的详细信息,包括目标文件、可执行文件、共享目标文件与核心转储文件。
在这里插入图片描述

2.调试指令

2.0quit退出

退出

2.1list/l/l 数字: 显示代码

可视化差

在这里插入图片描述

从第一行开始显示

在这里插入图片描述

这里是引用

2.2run/r运行

≈ F5 若没有断点 则直接运行结束

2.3断点相关

1. break num/b num: 设置

在num行打断点

2. info b: 查看

3. d index: 删除

index: 断点的编号
在这里插入图片描述

4. n: F10逐过程

5. p + 变量名: 调试过程显示变量信息

6. step/s : F11:逐语句

7. bt: 调用堆栈

8. finish: 运行完成当前函数 并返回调用此函数的位置

9. display + 变量名: 显示变量的值直到他被取消

10. undisplay + 编号: 取消常显示

11.until + num: 跳转到指定行 (当前栈帧)

12.continue/c: 运行至下一个断点停止

13. disable + 编号: 禁用当前断点

断点仍然还存在 只不过禁用 Enb状态变为n(no)

13. enable + 编号: 取消禁用当前断点

Enb状态变为y(yes)

14. set var i = 100: 改变变量值

调试过程中 改变已有变量i的值

相关文章:

  • scss 实用教程
  • 深入理解ClickHouse跳数索引
  • Redis之主从复制
  • 搭建神经网络(torch.nn的用法)
  • Llama2通过llama.cpp模型量化 WindowsLinux本地部署
  • Spring Boot自动配置原理、实战、手撕自动装配源码
  • 一步一步详细介绍如何使用 OpenCV 制作低成本立体相机
  • css实现div倾斜效果
  • SDWAN(Software Defined Wide Area Network)概述与优势分析
  • 用于图像处理的高斯滤波器 (LoG) 拉普拉斯
  • hdlbits系列verilog解答(100位BCD加法器)-43
  • 解决win11更新后,文件夹打不开的bug
  • KafkaConsumer 消费逻辑
  • pytorch DistributedDataParallel 分布式训练踩坑记录
  • Clickhouse学习笔记(5)—— ClickHouse 副本
  • 新方向!文心一言X具身智能,用LLM大模型驱动智能小车
  • spring boot security 自定义AuthenticationProvider
  • 软考 系统架构设计师系列知识点之边缘计算(5)
  • 力扣138:随机链表的复制
  • CHATGPT----自然辩证法分析
  • 纽约市长称墨海军帆船撞桥已致2人死亡,撞桥前船只疑似失去动力
  • 魔都眼|邮轮港国际帆船赛启动,120名中外选手展开角逐
  • 民间打拐志愿者上官正义遭人身安全威胁,杭州公安:已立案
  • 穆迪下调美国主权信用评级
  • 消息人士称俄方反对美国代表参加俄乌直接会谈
  • 巴基斯坦与印度停火延长至18日