VS2017调试Qt源码

简 述: 前面用了两年 Linux,现切回来 win10 系统,略不习惯;感觉用 MSVC(VS2017) 和 win10 使用还有点不够利索,记一下解决方式。

  • MSVC 安装 pdb 符号包,调试 Qt 源码

  • Qt 程序增、删组件、卸载时失败,提示 "At least one valid and enabled repository required for this action to succeed."


本文初发于 “偕臧的小站”,同步转载于此。


问题

​ 环境 win10 21H1 📎 Qt 5.12.11 📎 Visual Studio 2017 ,创建一个空的 CMake + Qt 项目,用 VS 打开,调试进入 Qt 源码失败。


分析

使用 VS2017 调试进 Qt 源码,调试到 qwidget.cpp 的 .show() 的定义;一直进不去,查询之后调试符如下。


解决方式

用 MSVC 成功调试 Qt 失败,可检查如下:

  1. Qt5Guid .dll (Debug 模式下 dll 名称含 d)
  2. 加载了 pdb (确定版本没下错)
  3. 解决方案加载了 src源码
  4. 加载了符号调试包路径

方式一

推荐 MaintenanceTool 设置镜像

下载对应的 pdb 压缩包,下载链接 download.qt.io,下载对应版本后解压

对此解决方案,添加 Qt 源码路劲,便于找到 .cpp 文件

添加符号调试包

断点调试, F11 进入 show() 函数定义成功;此时可以看到最底部, *d.dll、.pdb 都被加载正确,得以验证。


解决二

控制面板-Qt项选右键菜单更改时, 若报错提示 At least one valid and enabled repository required for this action to succeed. 解决方案为添加如下自定义:

https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_51211/
https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/tools_mingw/
https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_51211/

# 51211 表示 5.12.11 版本,可自行实际替换

点击添加组件,勾选 “Qt Debug Information Files”,安装即可。其它步骤同方式一。


参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

偕臧x

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值