升级 gdb 以在 Qt Creator 中使用

Posted

技术标签:

【中文标题】升级 gdb 以在 Qt Creator 中使用【英文标题】:Upgrading gdb for use in Qt Creator 【发布时间】:2011-03-21 16:35:35 【问题描述】:

最新版Qt安装gdb 7.1版。这有一个烦人的错误:它将某些完全有效的表达式评估为<unavailable synchronous data>。显然这已经在 gdb 7.2 版本中修复了,所以我下载了最新的 gdb.exe 并将其复制到Qt\pythongdb\gdb-i686-pc-mingw32.exe。唉,这并不成功:枚举被评估为<anonymous enum> 而不是(比如)myHelpfulEnumVal(void*)p 被评估为void* 而不是(比如)cbf56e0。所以我恢复到 gdb 7.1 版。 有人知道我还需要做什么才能将 gdb 7.2 与 Qt Creator 集成吗?还是根本没有实施? 我在 Windows 7 下使用 minGW。

更新我已经按照 Stephen Chu 的建议做了,现在正在使用 Qt Creator 2.2 和 gdb 7.2。它似乎工作正常。但我必须弄清楚如何告诉 Qt Creator 在哪里可以找到 gdb,因为这样做的方式已经改变:转到 Tools -> Options -> Tool Chains。您应该看到(至少,我看到了,在 Windows 下使用 mingw)Auto-detected 列表和 Manual 列表。 Manual 列表包含一个项目:

MinGW from Simulator Qt for MinGW 4.4 (Qt SDK)

单击此按钮,您可以在Debugger: 字段中输入gdb 的路径。就我而言,这是

C:\Qt\qtcreator-2.1.81\pythongdb\gdb-i686-pc-mingw32.exe

HTH

【问题讨论】:

【参考方案1】:

Creator 2.2 包含 gdb 7.2。所以你可以在这里下载并试用快照:ftp://ftp.qt.nokia.com/qtcreator/snapshots/latest/

不知道能不能把2.2的gdb复制下来,在2.1中使用。但值得一试。我使用 2.2 快照,因为它现在足够稳定。

【讨论】:

实际上,即使在 Creator 2.2 中使用 7.2,我有时仍然会看到这个不可用的同步数据问题。就像,现在。 :) 所以这可能不是 gdb 的问题,而是 Creator 本身的问题。 最新的Creator2.2包含了哪个版本的g++?如果是 4.5,我可能会冒险。 还是 4.4。我认为他们需要保持它与当前的 Qt 二进制版本相同。

以上是关于升级 gdb 以在 Qt Creator 中使用的主要内容,如果未能解决你的问题,请参考以下文章

在 Qt Creator 中使用 GDB 时如何终止 gdbserver?

TestDisk 之Qt creator + MinGW +Qt +gdb

Qt Creator - GDB 的选定版本不支持 Python 脚本

链接 Scaleform 以在 Qt Creator 中构建应用程序

如何配置 Qt Creator 以在 centos 6.7 上使用 RH 的 devtoolset-2?

如何在 qt creator 中为 cdb 编写调试助手?