使用VS2015调试Qt5.9.5源码
调试的前提
1、Qt5.9.5源码。
2、Qt5.9.5对应VS2015版本的pdb文件。
前提1在安装Qt时勾选源代码选项即可,这样安装后的Qt目录会多出一个“Src”的目录,里面就是Qt的源码。
前提2需要到这个网站:http://download.qt.io/archive/qt/5.9/5.9.5/去下载pdb文件,如下图:
下载后打开压缩包:
因为我们使用的是VS2015,而且编译的程序是32位的,所以这里选择上图中红框中的压缩包。现在解压到当前文件夹:
然后打开这个压缩包,将其中所有内容解压到Qt安装路径,如我的电脑是“C:\Qt\Qt5.9.5\5.9.5\msvc2015”。解压后可以看到有许多pdb文件,如下图:
如何调试
1、配置VS全局符号路径
菜单栏-工具-选项-调试-符号,在右侧“符号文件位置”中新添加上Qt安装路径中bin文件夹路径,如“C:\Qt\Qt5.9.5\5.9.5\msvc2015\bin”。
2、配置VS全局源文件路径
切换至“属性管理器”视图,随便选择一个项目,展开后可以看到在“Debug-Win32”子项,继续展开后可以看到“Microsoft.Cpp.Win32.user”子项,双击此项后出现全局属性配置界面,选择“通用属性-VC++目录”,在右侧“源目录”中添加Qt源码路径,如“C:\Qt\Qt5.9.5\5.9.5\Src”。
3、先打上断点,然后需要将要调试的Qt项目重新生成下,然后按F5调试,命中断点时按F11即可看到源码。
使用VS2015调试Qt5.9.5源码的更多相关文章
- windows 下使用 mingw编译器 调试时 无法跟进源码
windows 下使用 mingw编译器 调试时 无法跟进源码 最近在公司使用QT 开发,官方在线下载的 安装的QT mingw 都是没有debug版本的 由于没有debug版本动态库 所以你调试的时 ...
- XposedNoRebootModuleSample 不需要频繁重启调试的Xposed 模块源码例子
XposedNoRebootModuleSample(不需要频繁重启调试的Xposed 模块源码例子) Xposed Module Sample No Need To Reboot When Debu ...
- Win10 VS2015 静态编译Qt5.6.2源码
由于VS2015需要CRT等拓展组件,因此把内部编写的工具软件以静态发布,固需要编译Qt源码.Qt5.6.2版本,VS2015,Win10 1.安装python,perl,下载jom 2.改文件com ...
- Visual Studio 2017中使用SourceLink调试ASP.NET Core源码
背景 当我们在学习ASP.NET Core或者调试ASP.NET Core程序的时候,有时候需要调试底层代码,但是当我们在Visual Studio中调试程序的时候,由于一些基础库或者第三方库缺少pd ...
- QGis+QT5.9+VS2017源码编译
1.需要软件 VS2017 QT5.9.2 CMake 3.10.2 Cygwin osgeo4w QGIS源码 2.安装VS2017 过程省略 是由于机器上已经安装了VS2017 3.安装QT5. ...
- maven项目debug调试不能够进入源码问题解决
Maven项目在debug调试模式的时候,进入调试模式,但是没有进入源码界面. 上述问题的解决方法如下: 第一步: 第二步: 第三步: 第四步: 第五步: 到这里就解决了:
- 手把手教你调试Entity Framework 6源码
0 摘要 本文讲述在Visual Studio 2013(VS 2013)下调试Entity Framework 6(EF 6)源码的配置过程.原则上,VS 2012也适用. 之前打算编写<E ...
- 如何搭建自己的SpringBoot源码调试环境?--SpringBoot源码(一)
1 前言 这是SpringBoot2.1源码分析专题的第一篇文章,主要讲如何来搭建我们的源码阅读调试环境.如果有经验的小伙伴们可以略过此篇文章. 2 环境安装要求 IntelliJ IDEA JDK1 ...
- 调试tomcat9.0.19源码
本文所用到的环境: IntelliJ IDEA Apache Maven 3.3.9 jdk1.8 1. 查看Tomcat版本 $TOMCAT_HOME\bin\version.bat D:\Prog ...
随机推荐
- C# LINQ学习笔记二:LINQ标准查询操作概述
本笔记摘抄自:https://www.cnblogs.com/liqingwen/p/5801249.html,记录一下学习过程以备后续查用. “标准查询运算符”是组成语言集成查询 (LINQ) 模式 ...
- Jmeter-集合点与关联
1.集合点 添加同步定时器(Synchronizing Timer) 注意:集合点需要放在需要集合的元件前面 2.关联 预先使用Badboy录制WebTours登录脚本 在登录前插入一个监听器:察看结 ...
- 51 nod1067 Bash游戏 V2(sg函数打表)
1067 Bash游戏 V2 1.0 秒 131,072.0 KB 5 分 1级题 有一堆石子共有N个.A B两个人轮流拿,A先拿.每次只能拿1,3,4颗,拿到最后1颗石子的人获胜.假设A B都非 ...
- ctf-ping命令执行绕过
题目连接:http://ctf.klmyssn.com/challenges#Ping 命令执行绕过,试了试过滤了一些:一些命令 但是反引号可以执行命令 通过拼接,可以拼接出来:ls 命令 127.0 ...
- ubuntu 开启对.htaccess的支持
1. 终端运行 sudo a2enmod 程序提示可供激活的模块名称,输入: rewrite 成功会提示 rewrite already load2. 修改/etc/apach ...
- FJUTOJ-3682 LRU算法的实现2 (链表+哈希)
传送门 此题让我们实现一个LRU的模板类.本题较简便且高效的写法是维护一个std::list和一个std::unordered_map. std::list 与 std::unordered_map ...
- Codeforces Round #603 (Div. 2) C.Everyone is A Winner!
tag里有二分,非常的神奇,我用暴力做的,等下去看看二分的题解 但是那个数组的大小是我瞎开的,但是居然没有问题233 #include <cstdio> #include <cmat ...
- Hibernate:对象关系映射(一对一,一对多,多对一,多对多)
如需转载,请说明出处:http://www.cnblogs.com/gudu1/p/6895610.html Hibernate通过关系映射来表示数据库中表与表之间的关系,关系映射可以通过两种方式:配 ...
- 使用JavaMail发送邮箱详解
package com.gqz.forfuture.email; import java.util.Date; import java.util.Properties; import javax.ma ...
- echart如何去掉X 、Y轴的网格线
1.如何去掉X.Y轴的网格线,关键是splitLine{show:false} xAxis:[{ type:'value', splitNumber:2, scale:true, splitLine: ...