qt---cdb(Microsoft Console Debugger)调试
支持的调试器
windows系统下主要的调试器:
- CDB ,只能调试用户程序,只有控制台界面,以命令行形式工作
- NTSD, 只能调试用户程序,只有控制台界面,以命令行形式工作
- KD,主要用于内核调试,有时候也用于用户态调试,只有控制台界面,以命令行形式工作
- WinDbg,在用户态、内核态下都能够发挥调试功能,采用了可视化的用户界面
| Platform | Compiler | Native Debugger |
|---|---|---|
| Linux | GCC/ICC | GDB, LLDB (experimental) |
| Unix | GCC/ICC | GDB |
| macOS | GCC/Clang | LLDB,FSF GDB(experimental) |
| Windows/MinGW | GCC | GDB |
| Windows/MSVC | Microsoft Visual C++ Compiler | Debugging Tools for Windows/CDB |
在qt的官方文档上,写明了各个平台上的qtcreator支持的编译器以及对应调试器。如windows平台上面MinGW版本的qtcreator就支持GDB调试器。而MSVC版本的qtcreator默认是没有调试器的,需要自己去安装并设置好调试器(CDB)。
下载和安装
下载地址:https://msdn.microsoft.com/zh-cn/library/windows/hardware/ff551063

安装分为在线安装和离线安装,离线安装可以先选择将安装包下载下来,然后再安装。独立安装只选择Debugging Tools for Windows即可。
QtCreator中配置CDB
方式一: 手动配置
- 打开
Tools>Options>Debugger>CDB Paths - 在Symbol Paths面板中, 选择
Insert - Select the directory where you want to store the cached information. Use a subfolder in a temporary directory, such as
C:\temp\symbolcache. - Select
OK.
方式二:重启QtCreator,自动检测,然后手动选择调试器

调试实践

可以很清晰的看到变量的值变化,可以单步调试,打断点等等。
扩展
qt内存泄露检查:
- Linux ,Mac OS X : Valgrind
- Windows: Visual Leak Detector for Visual C++ 2008-2015 (VLD, Open-source)
参考
https://wiki.qt.io/Profiling_and_Memory_Checking_Tools
http://www.voidcn.com/blog/u011012932/article/p-6231451.html
https://msdn.microsoft.com/zh-cn/library/windows/hardware/hh406277
https://doc.qt.io/qtcreator/creator-debugger-engines.html
http://blog.csdn.net/FreeApe/article/details/52976704
qt---cdb(Microsoft Console Debugger)调试的更多相关文章
- 教你50招提升ASP.NET性能(三):使用Microsoft的PDBs调试和分析外部的程序集和库
(3)Use Microsoft’s PDBs to debug or profile external assemblies or libraries 招数3: 使用Microsoft的PDBs调试 ...
- Microsoft Visual Studio调试监视器(MSVSMON.EXE)未能启动
在启动VS2010项目时,遇到如图所示"Microsoft Visual Studio调试监视器(MSVSMON.EXE)未能启动"的问题. 原因是VS2010安装路径(我的是D: ...
- Qt入门(10)——调试技术
命令行参数当你运行Qt程序时,你可以指定几个命令行参数来帮助你调试.-nograb 应用程序不再捕获鼠标或者键盘.当程序在Linux下运行在gdb调试器中时这个选项是默认的.-dograb 忽略任何隐 ...
- 使用Qt Creator进行linux远程调试
序言 考虑到程序员在无桌面Linux的环境下编写C/C++程序,如果使用原生的Vim编辑和单步断点调试比较麻烦,不利于新手使用,所以笔者尝试使用Qt实现两台Linux电脑远程部署和调试.即程序员在调试 ...
- Qt 使用#define+qDebug()输出调试信息
/******************************************************************************************* * Qt 使用 ...
- How to configure CDB in Qt Creator(使用VC调试器)
I was having the same problems too, and finally figured out how to solve this. Styne666 gave me a hi ...
- Qt在Windows上的调试器CDB安装与配置
如果安装Qt时使用的是Visual Studio的预编译版,那么很有可能就会缺少调试器(Debugger),而使用MSVC的Qt对应的原生调试器是CDB(对应MinGW的Qt使用GDB调试器).本文介 ...
- webpack打包去掉console.log打印与debugger调试
如图,找到build/webpack.prod.conf.js 在 UglifyJsPlugin 插件下添加下列代码 drop_debugger: true, drop_console: true
- 使用Windows Debugger调试托管代码----引用自官方帮助文档
以下文字引用在Windbg的帮助文档.觉得对初次调试托管代码,非常有用,故粘贴至此. ========================================================= ...
随机推荐
- 从研究try catch 捕获不到异步错误谈谈学习方法的问题
先看下面的代码,思考一下输出 try { throw new Error(3) } catch (e) { console.log(e) } try { setTimeout(function () ...
- 【t017】YL杯超级篮球赛
Time Limit: 1 second Memory Limit: 256 MB [问题描述] 一年一度的高一YL杯超级篮球赛开赛了.当然,所谓超级的意思是参赛人数可能多于5人.小三对这场篮球赛非常 ...
- webcollector 2.x 爬取搜狗搜索结果页
/** * 使用搜狗搜索检索关键字并爬取结果集的标题 * @author tele * */ public class SougouCrawler extends RamCrawler{ public ...
- Word 2010/2013 菜单栏添加 MathType 菜单
一般对于 office 的高级版本,比如 word 2010/2013,在手动安装 mathtype 之后,并不会再 word 的菜单栏,创建 mathtype 按钮,此时需要按照如下步骤,手动导入 ...
- 【33.00%】【vijos P1002】过河
描述 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上 ...
- Python logging模块无法正常输出日志
废话少说,先上代码 File:logger.conf [formatters] keys=default [formatter_default] format=%(asctime)s - %(name ...
- 字符串、对象、数组操作方法、json方法
1.字符串操作方法 1.charAt * 作用 * 通过索引找字符 ...
- 1 Task的简单实用
Task是thread和threadpool两者结合的产物,吸收了二者的优点 进一步添加了一些新的 优秀的功能. using System; using System.Threading.Tasks ...
- 数学思想方法-python计算战(8)-机器视觉-二值化
二值化 hreshold Applies a fixed-level threshold to each array element. C++: double threshold(InputArray ...
- Jconsole使用实例解说
Jconsole是jdk自带的一套java虚拟机执行状况监视器,它能够用来监控虚拟机的内存,线程,cpu使用情况以及相关的java进程相关的MBean,主界面例如以下: 图1 怎样连接被监控的Java ...