如何在Qt Creator中配置CDB?

时间:2012-04-02 11:56:32

标签: c++ c qt qt-creator

问题here与我的问题相同,但那里的解决方案对我不起作用。我在Windows 7上使用QtCreator 2.4.1。当我尝试调试一个简单的hello world app时,显示的消息是:“用于调试'x86-windows-msvc2010-pe-32bit'类型的二进制文件的首选调试器引擎不可用....详细信息:没有CDB二进制文件可用于格式为'x86-windows-msvc2010-pe-32bit“的二进制文件

当我发现cdb.exe不在我的系统上时,我安装了带有调试工具的Windows SDK,cdb.exe的当前位置是“C:\ Program Files(x86)\ Windows Kits \ 8.0 \ Debuggers \ x86 \ cdb.exe“和”C:\ Program Files(x86)\ Windows Kits \ 8.0 \ Debuggers \ x64 \ cdb.exe“,

在CDB标签中,我配置了符号服务器以及CDB.exe的路径,但是徒劳无功!

QtCreator->工具 - >选项 - >调试器 - > CDB标签 - >具有以下字段:
其他论点
使用CDB控制台
符号路径
来源路径
纠正断点位置等......

有人可以详细解释这些意味着什么以及这里预期的价值。是否有人使用Qt Creator成功调试了任何应用程序。


请参阅此链接:
http://qt-project.org/forums/viewthread/16018/

7 个答案:

答案 0 :(得分:58)

我也遇到了同样的问题,最后想出了如何解决这个问题。 Styne666给了我一个提示。执行以下操作:

  1. 工具
  2. 选项...
  3. 构建&运行
  4. 工具链
  5. 使用“克隆”按钮制作每个自动检测到的MSVC项目的副本
  6. 在每个克隆项目中,您可以在“调试器”字段中指定调试器(例如C:\ Program Files \ Windows Kits \ 8.0 \ Debuggers \ x64 \ cdb.exe)
  7. 此后一切似乎都有效......
  8. 我应该进一步提一下,如果你像我一样运行64位版本的Windows和32位版本的Qt Creator,你需要确保你指向32位版本的cdb(其中有x86和x64 目标版本)。因此,对于32位目标版本,我运行它:

    C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x86\cdb.exe
    

    对于x64版本,我运行它:

    C:\Program Files (x86)\Windows Kits\8.0\Debuggers\x64\cdb.exe
    

    棘手的部分是让Microsoft在64位计算机上安装32位版本的调试工具有点困难。一位同事最近尝试这样做并说他需要安装Windows 8工具才能选择这样做 - Windows 7版本不会让你这么做。

答案 1 :(得分:4)

花了一些时间用Qt Creator 2.6.0(在Windows 7上)弄清楚这一点,所以这里是:

  • 工具,选项......
  • 构建&运行,套件选项卡,选择“桌面(默认)”(在手动下)
  • 单击“管理”按钮,然后选择右侧的“编辑” “调试器:”
  • 引擎:CDB,Binary:C:\ Program Files \ Debugging Tools for Windows (64)\的Cdb.exe

答案 2 :(得分:2)

我尝试首先安装 Visual Studio 2010 , 之后,然后在CDB Binary放置:C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger\x86\mpishim100.exe,或者只下载此文件!..

它的解决方案!!! 在Windows 8 64位!!

答案 3 :(得分:2)

根据您安装的Visual Studio版本,您可以在不同位置找到CDB.exe。通过在C:\驱动器中搜索来检查系统中是否可用。

在我的情况下,我安装了Visual Studio 2012 Express和Visual Studio 2013的Windows 7(x64),我必须安装适用于Windows 7的Microsoft Windows SDK here才能在我的系统中安装CDB.exe 。安装完成后,QT Creator能够在此位置检测CDB.exe:C:\ Program Files \ Debugging Tools for Windows(x64)\ cdb.exe。

SDK中唯一需要的是Common Utilities |适用于Windows的调试工具。

答案 4 :(得分:1)

这听起来就像我在OSX上使用gdb遇到的那样。如果是这样,我的解决方案是(在Qt Creator中):

  1. 工具
  2. 选项...
  3. 构建&运行
  4. Qt版本
  5. 选择相应的版本
  6. 展开“详细信息”面板
  7. 按下与“GDB Helper”内联的构建按钮
  8. 在您的情况下,文本可能会有所不同(也许是CDB而不是GDB),但可能适用相同的步骤。

答案 5 :(得分:1)

我收到此错误是因为我安装的Visual Studio版本比我安装的Qt版本旧得多。我已经安装了Visual Studio 2015,但我的Qt版本(最新版本)使用的是Visual Studio 2019的编译器,这显然与Visual Studio 2015的调试器不兼容。

在我的情况下,解决方案是卸载并重新安装Visual Studio和Qt,以确保我都拥有最新版本。您可以下载最新版本的Visual Studio here(如果不想付款,请选择“社区”下的“免费下载”),然后可以下载最新版本的Qt here

答案 6 :(得分:0)

  1. 为各个窗口重新安装Windows sdk
  2. 正确配置任何外部库的发布/调试dll