支持的调试器

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 > DebuggerCDB 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)调试的更多相关文章

  1. 教你50招提升ASP.NET性能(三):使用Microsoft的PDBs调试和分析外部的程序集和库

    (3)Use Microsoft’s PDBs to debug or profile external assemblies or libraries 招数3: 使用Microsoft的PDBs调试 ...

  2. Microsoft Visual Studio调试监视器(MSVSMON.EXE)未能启动

    在启动VS2010项目时,遇到如图所示"Microsoft Visual Studio调试监视器(MSVSMON.EXE)未能启动"的问题. 原因是VS2010安装路径(我的是D: ...

  3. Qt入门(10)——调试技术

    命令行参数当你运行Qt程序时,你可以指定几个命令行参数来帮助你调试.-nograb 应用程序不再捕获鼠标或者键盘.当程序在Linux下运行在gdb调试器中时这个选项是默认的.-dograb 忽略任何隐 ...

  4. 使用Qt Creator进行linux远程调试

    序言 考虑到程序员在无桌面Linux的环境下编写C/C++程序,如果使用原生的Vim编辑和单步断点调试比较麻烦,不利于新手使用,所以笔者尝试使用Qt实现两台Linux电脑远程部署和调试.即程序员在调试 ...

  5. Qt 使用#define+qDebug()输出调试信息

    /******************************************************************************************* * Qt 使用 ...

  6. 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 ...

  7. Qt在Windows上的调试器CDB安装与配置

    如果安装Qt时使用的是Visual Studio的预编译版,那么很有可能就会缺少调试器(Debugger),而使用MSVC的Qt对应的原生调试器是CDB(对应MinGW的Qt使用GDB调试器).本文介 ...

  8. webpack打包去掉console.log打印与debugger调试

    如图,找到build/webpack.prod.conf.js 在 UglifyJsPlugin 插件下添加下列代码 drop_debugger: true, drop_console: true

  9. 使用Windows Debugger调试托管代码----引用自官方帮助文档

    以下文字引用在Windbg的帮助文档.觉得对初次调试托管代码,非常有用,故粘贴至此. ========================================================= ...

随机推荐

  1. unityd 公布android apk相关

    http://game.ceeger.com/forum/read.php?tid=5918&ds=1 相关的文章非常多,我仅仅记录自己遇到的一些关键点. 1.jdk android SDK ...

  2. C# opcode 查询源码

    Add|将两个值相加并将结果推送到计算堆栈上.Add.Ovf|将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上.Add.Ovf.Un|将两个无符号整数值相加,执行溢出检查,并且将结果推送到计算 ...

  3. visual studio 2015安装win10 SDK文件校验错误的解决方法

    这段时间想看一下UWP开发,于是下载了visual 2015 update1社区版,但是在安装完成时提示,windows 10 sdk文件校验码错误,如下图(图片是借用的,我当时没有截屏,错误号是一样 ...

  4. Spring Boot with JSP and Tiles3

    Spring Boot with JSP and Tiles3 Using tiles and jsp on a Spring Boot 1.2.7 project file: pom.xml und ...

  5. 从Client应用场景介绍IdentityServer4(四)

    原文:从Client应用场景介绍IdentityServer4(四) 上节以对话形式,大概说了几种客户端授权模式的原理,这节重点介绍Hybrid模式在MVC下的使用.且为实现IdentityServe ...

  6. OpenCV图像修复

    在OpenCV的"photo.hpp"中定义了一个inpaint函数,可以用来实现图像的修复和复原功能,inpaint函数的原型如下: void inpaint( InputArr ...

  7. Android Studio怎样提示函数使用方法

    Eclipse有一个非常好的功能,就是当你代码调用某个android API时,鼠标移到相应的函数或者方法上,就会自己主动有一个悬 浮窗提示该函数的说明(所包括的參数含义,该方法功能).迁移到Andr ...

  8. 构建自己的PHP框架(路由)

    完整项目地址:https://github.com/Evai/Aier 上一篇中我们已经建立了一个空的 Composer 项目,本篇将讲述如何构建路由. 下面我们就开始自己来构建路由,先去 GitHu ...

  9. ubuntu如何修改terminal终端的主机名(修改/etc/hostname文件)

    有时候安装完Ubuntu系统后,打开命令终端,终端显示的主机名格式比较难看,例如 我最近买的国内某云的VPS. xxx@VM-1560-ubuntu$ xxx@VM-1560-ubuntu$ 对于有洁 ...

  10. HQL链接查询

    和SQL查询一样,HQL也支持各种各样的连接查询,如内连接.外连接.我们知道在SQL中可通过join字句实现多表之间的连接查询.HQL同样提供了连接查询机制,还允许显示指定迫切内连接和迫切左外连接.H ...