我正在尝试在运行 Mac OS X v10.5 (Leopard) 的 MacBook Pro 上使用 Eclipse Galileo 调试 C++ 代码。这是我第一次尝试这个。我有一个复杂的 C++ 程序我想调试,但为了测试一下,我只是尝试调试并逐步执行以下操作:

#include <iostream>
using namespace std;

int main()
{
  int x = 0;
  cout << x << endl;

  x = 54;
  cout << x << endl;

  return 0;
}

我点击了调试图标,告诉它使用 GDB (DSF) Create Process Launcher 并开始逐步执​​行代码。我希望能够监控 x 的值,所以我打开了 Variables 窗口并进行了观察。最初,它是 4096 - 大概是一些垃圾值。一旦我点击下一行,它显示了值,它现在显示以下错误:
Failed to execute MI command:
-var-update 1 var1
Error message from debugger back end:
Variable object not found

我似乎无法弄清楚或解决它。一些谷歌搜索结果完全没有任何线索。

解决方案 :正如 drhirsch 在下面指出的,使用标准创建进程启动器而不是 GDB 创建进程启动器。 (这实际上是一种解决方法,而不是真正的解决方案,但它至少对我们两个人有效。)

最佳答案

根据我的经验,gdb/dsf 启动器仍然无法使用。我也无法让它显示变量,它似乎仍然有很多问题。

您是否尝试过标准创建流程启动器?对我来说这很好用。

关于c++ - 在 Mac 上使用 Eclipse Galileo 调试 C++ 时遇到问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1270285/

10-11 22:57
查看更多