Mastering Qt 番外 —— 添加源码调试

        笔者最近正在尝试深入的学习Qt框架,经常需要明确我经常使用的类底下发生了什么,因此笔者决定仔细研究一下如何进行源码级别的调试

        此篇文章将会介绍如何使用Qt Creator这个IDE进行调试。最终效果如下

EasyWay

        笔者采用的是这个最简单明了的方式,打开Qt安装目录下的MaintenanceTool.exe,在登录结束后选择“添加或移除组件选项”

        在各位看官自己安装的版本下,可以看到Qt Debug Information Files,勾选安装即可

Tough Way

        还有一种情况,就是看官选择的版本的MaintenanceTool.exe不提供Qt Debug Information Files,在这个情况下,看官就需要手动的下载调试所需要的pdb文件了

        举个例子,如果看官使用的是Qt6.7.2,其目标编译器是Mingw64,目标主机操作系统是Windows64位,那么,在如下的链接下载所需要的库的pdb文件即可。放到自己的一个文件夹下(哪里都行,但是需要记住放在哪里)

Index of /online/qtsdkrepository/windows_x86/desktop/qt6_672/qt.qt6.672.debug_info.win64_mingw

Qt Creator配置

        再下一步就是Qt Creator的配置了,如果您是Old Qt Creator User, 在工具 - 选项里找到调试器,如果你是新Qt Creator用户(比如说我),事情很简单

        

        点击Preferences就行。

        下一步就是找到调试器,告诉我们的调试器到哪里找到我们的Qt FrameWork的源码符号。对于采用了EasyWay的同志们,事情还是很Easy,只需要自己在调试器中添加自己下载的Qt源码位置就好了(btw: 自己使用 + 调试的源码保证版本一致,为什么呢,不同版本代码不一样,调试符号自然不同,调试时错配 pdb 文件,默认的行为是调试器装死直接ignore F11)

        ToughWay的同志们在做完上面这个事情的基础上,再选择CDB Path路径

        添加的东西是下载的pdb根文件夹下的bin目录(确保暴露pdb文件即可)(btw,不太负责任,因为笔者尚未求证此方法!)

        现在我们可以对Qt进行源码级别的调试了(笑

Reference

qt5.12调试信息(pdb文件)安装 – simba (simbot.net)

Qt查看源码总结帖 | Olimi (olimiya.github.io)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/143640.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

springboot调用python脚本实现ocr图片文字识别功能

OCR简介: OCR(Optical Character Recognition),即光学字符识别,是一种利用计算机自动识别和解析图像中的文字信息的技术。它能够将纸质文档、图片、照片等载体上的文字信息转化为计算机可编辑和处理的文本数据。 一,准备工作 1,java环境 2,springboot项目 3,python环境 …

如何增强水凝胶湿粘附力?藤壶启发与溶剂交换策略相结合!

大家好,今天我们来聊聊一项关于水凝胶的有趣研究——《Barnacle inspired strategy combined with solvent exchange for enhancing wet adhesion of hydrogels to promote seawater-immersed wound healing》发表于《Bioactive Materials》。在湿或水下环境中&…

rem与px转换工具

rem与px都是css样式单位,通常px是我们比较熟悉的单位,所以根据设计稿转换rem的话,一般都需要根据html的设置的px字号来转换,本工具可以实现rem与px之间的转换

50个必须知道的VS代码扩展

我们即将浏览50个必须知道的VS Code扩展,这些扩展将大幅提高您的生产力,并帮助您像专业人士一样编码! 1. TabNine TabNine 是一个基于AI的自动完成工具,它可以根据您的代码上下文和模式建议完成,通过智能自动完成提高…

从源码到应用:互联网医院系统与预约问诊APP开发实战指南

对于开发者来说,如何从源码出发构建一个高效、稳定的互联网医院系统和预约问诊APP,是一个具有挑战性但又充满潜力的任务。本文将深入探讨互联网医院系统源码的核心技术和开发要点,结合预约问诊APP的实现路径,分享从源码到应用的开…

大工程师客户端下载 官方地址

https://download.3dsource.cn/3DSource_Client.exe

原装二手MS2724C安立(Anritsu)MS2724B手持式频谱分析仪

安立ANRITSU MS2724C MS2724B手持式频谱分析仪 Anritsu MS2724C 高性能手持式频谱分析仪为无线专业人士提供了在恶劣的 RF 和物理环境中进行最苛刻的测量所需的性能。使用主要仪器功能可以轻松进行测量:频率、跨度、幅度和带宽。专用的常用功能键和熟悉的计算器型键…

vs code 跳转很慢

查看结构体、接口等非常之慢。c/c语言服务功能使用了智能引擎所致,设置为模糊检索即可。 修改如下: 1.打开"文件",选"首选项","设置" 2.弹出的窗口中搜索 "C_Cpp.intelliSenseEngine" …

青柠视频云——视频丢包(卡顿、花屏、绿屏)排查

一、问题说明 近期有客户反馈,接入平台的设备经常出来卡顿、花屏、录屏的情况,出现这样的场景很是尴尬。 客户是私有化部署在公网环境,于是我们联系客户,对问题进行追踪排查。 二、场景复现 我们现场情况确认的过程中,…

纷享销客“子流程”创新——企业流程管理的革新之选

Jack是一家电子商务企业的销售经理,近期他的公司订单量激增,但随之而来的退货流程却成了一个棘手的问题。每天,成百上千的退货请求涌向客服部门,而退货流程的每一步:从接收退货申请、物流派单、商品检验入库&#xff0…

数据结构之“队列”

文章目录 1.队列的概念2. 队列的操作2.1 队列的定义2.2 队列的初始化Init2.3 入队列2.4 出队列2.5 取队头数据2.6 取队尾数据2.7 获取队列有效元素的个数2.8 销毁队列 1.队列的概念 1.1 栈也是一种特殊的线性表。 1.2 栈和队列的区别: (1)几端…

ASR1602 CAT1无线通讯模块在电动车电池中的应用

随着城市交通拥堵问题的加剧和环保意识的提升,两轮电动车成为越来越多人的首选出行工具。作为其核心部件,电池的性能和安全性直接影响到两轮电动车的整体使用体验。为了提升电池管理系统的智能化水平,CAT1模组正逐渐被引入到两轮车电池中&…

超声波清洗机哪个品牌好用又实惠?精选业内四款优质清洗机推荐

超声波清洗机作为一种创新的清洁解决方案,凭借其深入微观的清洁效能、简便的操作方式以及对物品的细腻呵护,正逐渐成为广受喜爱的清洁良品。不过,市面上品牌林立、型号多样,价格亦波动不一,这无疑为消费者选购时平添了…

XSP08Q快充协议芯片应用场景及工作原理 支持电压档位:5V、9V、12V、15V、20V

XSP08Q是一款Type-C接口的诱电取电快充协议芯片,它兼容多种快充协议,包括PD、QC、FCP、SCP、AFC、等,支持5V、9V、12V、15V、20V等多种电压档位。 工作原理 这款芯片的工作原理是在充电过程中全程监测电压、电流、功率等参数 ,一…

Prometheus的容器化部署

node_exporte:节点数据收集器 daemonset:保证每个节点都有一个收集器 prometheus:监控主程序 grafana:图形化 altermanager:告警模块 部署 首先创建命名空间,部署 首先创建目录prometheus再创建node_…

如何使用ssm实现基于vue的音乐播放器的设计与实现+vue

TOC ssm606基于vue的音乐播放器的设计与实现vue 第1章 绪论 1.1 选题动因 到现在为止,互联网已经进入了千家万户,最普通的平民百姓也有属于自己的智能设备,计算机各种技术的储备也是相当的丰富,并且实现也是没有难度&#xff…

curl检测域名证书到期时间

公司业务会使用ssl证书来确保域名安全被访问,免费证书现在有效期为三个月更换频率比较快,使用curl命令进行检测然后根据对应监控软件进行提前告警关注 脚本内容 curl: -I 获取http头部响应信息 -v 显示详细操作信息 -s 静默输出 #!/bin/b…

网络安全等保培训 ppt

网络安全等级保护怎么做?

Vue3:props实现组件通信

目录 一.性质 1.实现组件的复用性 2.实现组件的数据流 3.实现组件的状态管理 4.实现组件的交互 二.使用 1.父组件 2.子组件 三.代码 1.父组件代码 2.子组件代码 四.效果 一.性质 Vue3 中 props 是组件的一个重要特性,用于父组件向子组件传递数据。prop…