Linux下调试工具:gdb

news/2024/12/21 2:17:21/

Windows和Linux下的调试有区别吗?
调试思路上一定是一样的;调试的操作方式有差别(Linux命令行调试,Windows窗口)

1.准备工作:

默认情况下,gdb无法进行对现在发布的程序进行调试(debug / release)。在Linux下用gcc编译生成的软件的时候,默认是release的!无法被直接调试。使用gcc -g会生成debug版本。
程序员需要调试,用户用不到也不会用debug,调试信息对用户是冗余的,用户需要更小的体量和优化速度。
补充:
---gcc默认行为:默认是动态链接的、默认是release版本
---vim默认行为:默认打开的时候是命令模式

2.调试工作

---进入gdb调试
---显示代码 l(list), l 0 , 回车 ->全部显示完毕
---打断点 b 24 (break),给第24行打断点
---查看断点 info b,显示打过段断点的所有行
---去掉断点 d 1,去掉第一个断点(在断点列表中的序号)

Windows下vs:逐语句F11,逐过程 F10,逐断点-开始调试F5,直接执行不调试Ctrl+F5

---开始调试-逐断点 r(run),运行在断点处停下 
---跳到下一个断点 c(continue),运行至下一个断点处
---逐过程 n(next),不进入函数内
---逐语句 s(step),进入到函数内;当n停到某函数时也可以s进这个函数
---查看函数的调用堆栈 bt
---直接将当前函数跑完停下来 finish
---查看变量的值或者地址 p
---长显示变量 ,变量名 display\undisplay,可与n等搭配使用
---跳转到代码的某行 until 某行,如果是无意义的符号会向下


http://www.ppmy.cn/news/1556793.html

相关文章

repmgr集群部署-PostgreSQL高可用保证

📢📢📢📣📣📣 作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验, Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、My…

Kaggler日志--Day9

进度24/12/18 昨日复盘: 补充并解决Day7Kaggler日志–Day7统计的部分问题 今日进度: 继续完成Day8Kaggler日志–Day8统计问题的解答 明日规划: 今天报名了Regression with an Insurance Dataset算是新手村练习比赛,截止时间是2…

clearvoice 语音降噪、语音分离库

参看: https://github.com/modelscope/ClearerVoice-Studio/tree/main ClearVoice 提供了一个统一的推理平台,用于语音增强、语音分离以及视听目标说话人提取。 代码参看: https://github.com/modelscope/ClearerVoice-Studio/tree/main/clearvoice https://github.com/mode…

【Elasticsearch】使用阿里云 infererence API 及 semantic text 进行向量搜索

原作者:Elastic布道师 刘晓国 在之前的文章 “Elasticsearch 开放推理 API 新增阿里云 AI 搜索支持”,它详细描述了如何使用 Elastic inference API 来针对阿里的密集向量模型,稀疏向量模型, 重新排名及 completion 进行展示。在…

【深度学习】论文复现-对论文数据集的一些处理

如何书写伪代码: ref:https://www.bilibili.com/video/BV12D4y1j7Zf/?vd_source3f7ae4b9d3a2d84bf24ff25f3294d107 i14时产出的图片比较合理 import json import os.path from matplotlib.ticker import FuncFormatter import pandas as pd import matplotlib.py…

Moretl非共享文件夹日志采集

免费: 至Gitee下载 教程: 使用说明 用途 定时全量或增量采集工控机,电脑文件或日志. 优势 开箱即用: 解压直接运行.不需额外下载.管理设备: 后台统一管理客户端.无人值守: 客户端自启动,自更新.稳定安全: 架构简单,兼容性好,通过授权控制访问. 架构 技术架构: Asp .net …

【计算机视觉基础CV】03-深度学习图像分类实战:鲜花数据集加载与预处理详解

本文将深入介绍鲜花分类数据集的加载与处理方式,同时详细解释代码的每一步骤并给出更丰富的实践建议和拓展思路。以实用为导向,为读者提供从数据组织、预处理、加载到可视化展示的完整过程,并为后续模型训练打下基础。 前言 在计算机视觉的深…

WebRTC服务质量(04)- 重传机制(01) RTX NACK概述

WebRTC服务质量(01)- Qos概述 WebRTC服务质量(02)- RTP协议 WebRTC服务质量(03)- RTCP协议 WebRTC服务质量(04)- 重传机制(01) RTX NACK概述 WebRTC服务质量(…