1

问题

我在应用程序的 timerEvent 函数内部调试时遇到了困难。当应用程序能够运行时,如果我在甚至像下面这样简单的东西中设置断点,我会收到一条错误消息,指出:“gdb 进程崩溃。”

void MyClass::timerEvent (QTimerEvent *e) {
    std::cout << "TIMER!";
}

我通过 pastebin在这里包含了一个调试器日志。


尝试

为了尝试解决这个问题,我尝试使用每个版本的 QT-creator 迭代升级 gdb,但无济于事。

我在用:

  • Linux ubuntu-x86 2.6.32-42-generic #95-Ubuntu 10.04LTS SMP i686 GNU/Linux
  • QT 创建者(版本 2.4 到 2.5.2)
  • 以“x86-linux-generic-elf-32bit”为目标的 gdb(7.1 到 7.5)
  • pythongdb (7.2)

问题

我的问题是双重的,即:

  • 是什么导致 gdb 崩溃?

  • 我该怎么做才能让它发挥作用?

如果做不到这一点,我想知道:我还应该在哪里寻找更多的崩溃细节?


非常感谢任何和所有帮助。

4

1 回答 1

0

确保您的 QT 库是最新的。尽管新的 QT-creator 将通过他们提供的方便的 .bin 文件安装,但它是使用较新的 QT 库构建的,并希望它们到位。如果他们不是,那么...

此外,如果您没有将 gdb 安装到 QT-creator 可以找到它的标准目录之一,请确保通过 tools->options->build 和 run->toolchains 将其手动添加到您的工具链中。

于 2012-08-21T17:00:37.587 回答