c++ - 如何在 Qt Creator 中配置 CDB?

标签 c++ c qt qt-creator

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

当我发现 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->Tools->options->Debugger->CDB Tab->有以下字段:
附加参数
使用 CDB 控制台
符号路径
源路径
正确的断点位置等...

有人可以详细解释这些含义以及此处预期的值。有没有人使用 Qt Creator 成功调试过任何应用程序。


请引用此链接:
http://qt-project.org/forums/viewthread/16018/

最佳答案

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

  1. 工具
  2. 选项...
  3. 构建并运行
  4. 工具链
  5. 使用“克隆”按钮复制每个自动检测到的 MSVC 项目
  6. 在每个克隆的项目中,您可以在“调试器”字段中指定调试器(例如 C:\Program Files\Windows Kits\8.0\Debuggers\x64\cdb.exe)
  7. 在这之后一切似乎都正常了......

我应该进一步提到,如果您像我一样运行 64 位版本的 Windows 和 32 位版本的 Qt Creator,您需要确保您指向的是 32 位版本的 cdb (其中有 x86 和 x64 target 版本)。所以对于 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

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

关于c++ - 如何在 Qt Creator 中配置 CDB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9975949/

相关文章:

c++ - 通过在 getter 方法上应用 begin() 获得的迭代器不允许访问指向列表的第一个元素

c - 线程修改同一个文件

c - 为什么 float 输出的结果与 double 输出的结果不同?

android - QT/QML 安卓 : How to keep an app running when the last windows is closed?

c++ - libxml2 xpath 解析,无法按预期工作

c++简单解析带有属性树的boost xml

c++ - 如何连接一个 const char 数组和一个 char 数组指针?

c++ - 如何在 MFC 图片控件的设计时显示图片?

c++ - 查找两个数组中的共同元素

QMessageBox 的 Qt 样式表