支持的调试器

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. hadoop 3.x 配置历史服务器

    修改$HADOOP_HOME/etc/hadoop/mapred-site.xml,加入以下配置(修改主机名为你自己的主机或IP,尽量不要使用中文注释) <!--history address- ...

  2. Word 2010/2013 菜单栏添加 MathType 菜单

    一般对于 office 的高级版本,比如 word 2010/2013,在手动安装 mathtype 之后,并不会再 word 的菜单栏,创建 mathtype 按钮,此时需要按照如下步骤,手动导入 ...

  3. 配置ANDROID_HOME

    原文:配置ANDROID_HOME 1.在环境变量中设置一个名为ANDROID_HOME,变量值为SDK路径 2.添加至Path中 备注:ANDROID_HOME的变量值仅允许一个

  4. 【25.23%】【codeforces 731C】Socks

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  5. 【21.28%】【codeforces 707D】Persistent Bookcase

    time limit per test2 seconds memory limit per test512 megabytes inputstandard input outputstandard o ...

  6. delphi 10.2 创建并使用资源文件(一共22种格式,RCDATA是自定义格式)

    windows支持以下资源格式: 1 2 //下面是 Windows 支持的资源格式: RT_CURSOR = MakeIntResource(1); RT_BITMAP = MakeIntResou ...

  7. java中用反射访问私有方法和私有成员[转]

    转自: http://zhouyangchenrui.iteye.com/blog/470521 java的反射可以绕过访问权限,访问到类的私有方法和成员.可能这点会引起安全性的讨论.反射的使用帮助解 ...

  8. 在webapi中使用swagger

    1 在webapi项目下安装swagger,包名 Swashbuckle.AspNetCore 2 在webapi的startup.cs文件中添加swagger服务 /// <summary&g ...

  9. DDD实战12 值对象不创建表,而是直接作为实体中的字段

    这里的值对象如下风格: namespace Order.Domain.PocoModels { //订单地址 //虽然是值对象 但是不继承ValueObject //因为继承ValueObject会有 ...

  10. WPF中的可视化对象(Visual)

    原文:WPF中的可视化对象(Visual) 这是MSDN对Visual的解释:Visual class:Provides rendering support in WPF, which include ...