VS2019 + Qt Creator 4.11.1 导入Qt源码进行调试记录.(术) + CMake

一 . 名词的解释

  • 编译器部分:

    1. MSVC: 微软出品,visual studio 默认的编译器
    2. gcc: GNU 出品,linux下的编译器
    3. Mingw: GNU出品,将gcc修改为支持Windows的编译器
  • 调试器部分:

    1. GDB: GNU出品,linux下debuger工具
    2. GDB for mingw: 顾名思义,还是一个鸟样,为了支持windows的调试搞的工具
    3. WinDg:Debugging tool for Windows ,微软的东西,现在得在WDK 或者SDK下载。包含界面调试,支持内核模式跟用户态的形式,也就是电脑蓝屏能分析dump文件,还能跟踪到内核Kernel.dll
    4. CDB:Debugging tool for Windows ,安装完后,内部包含Windbg同时有CDB工具,这个工具就是仅支持 命令行。Windbg应该在使用的时候也用到它。
      注:安装 Debugging tool for Windows 搜索一下就有了。需要注意一点是Win7的话下载安装在我的电脑失败,所以就把安装包解压找到WinSDKDebuggingTools_amd64 安装ok;
  • 解释PDB文件:
    简单来讲pdb文件就是记录断点的行号,文件名,建立程序运行与源代码的对应关系。其中gcc系列的编译器会将这些信息记录在exe、dll中,所以gcc同系列的编译器debug不需要pdb文件的支持,pdb文件也叫Symbol file 符号文件。(gcc系列指linux gcc ,MinGW)

  • 一般搭配:MSVC + CDB, Mingw + GDB for mingw

二. Qt Creator 添加src源码

   	网上搜索一大堆.安装qt的时候勾选source 或者 download.qt.io 下载;
    MinGW 编译器只要添加源码后,GDB 设断点 F11 就能进入源码。

三. VS

  • VS添加源码 需要添加 pdb 文件。(需不需要添加Pdb文件,看对应得编译器,如 qt creator 使用msvc 编译器 就得使用 CDB 调试器,加上 pdb 文件才能debug进源码)

  • 添加qt的pdb符号文件 debug -> options 如下图,

    问题来了,pdb哪里来??
    在这里插入图片描述
    ( symbol locations 记得加上plugins路径:D:\Qt\Qt5.14.2\5.14.2\msvc2017_64\plugins)

  • msvc编译器才需要 pdb 文件,那说明我们现在用的pdb文件本身就是msvc编译出来的(一句废话),那找qt啊! qt 提供debug.info 也就是pdb 下载。下载地址如下:(也可以自己编译源码时候得到)

  • 根据自己对应得版本选择,我这里是msvc2017_64,Qt 5.14.2
    下载完成后拷贝到Qt安装的根路径,选择自动解压。(或者解压后自己拷贝到相关路径,bin,lib,plugin等)主要是qtbase 跟 qttool,可以先下这两个文件。
    根路径如图:
    在这里插入图片描述

base的压缩包情况.
解压后可以看到对应的ppdb文件

  • 最后:配置好 pdb 文件后,跟 qt creator 一样,也得把qt src 源码包含进来。 右键解决方案 solution -> properties -> debug source files
  • 仅根据个人理解整理以上内容以备健忘。最主要的是把那些概念理清。还有vs 默认的调试器应该是msvsmon 可以试试! vsjitdebuger.exe 这个应该是脱离vs 环境,双击启动app时 如有崩溃,那么就使用 vsjitdebuger.exe管理。done.

20220817更正:

5.14.2 安装的mingw库里没有debug版本。所以5.14.2这个版本使用mingw也调试不了源码。调试源码的大前提:有对应的debug dll!

20220819增加:

  • macOS(m1)debug qt源码,除了qtCreator配置源码路径外,安装的qt也要有debug的库
  • 我是自己编译5.15.配置 debug and release ,qtc是利用brew 安装),接着需要在项目 project ->build&run->run配置里将debug打开。
    在这里插入图片描述

20231224增加(CMake管理的Qt项目):

  1. 保证Qt安装的时候包含源码以及包含pdb调试符号。(不管是自己编译还是在线安装)
  2. 设置 CMAKE_PREFIX_PATH ,指定Qt路径,包含Src文件夹 如: C:\Qt\Qt5.14.2\5.14.2
    包含源码文件夹src
    CMake管理项目方便很多.
  • 6
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值