【问题标题】:Eclipse CDT cannot debug using gdb on MacEclipse CDT 无法在 Mac 上使用 gdb 进行调试
【发布时间】:2015-04-06 02:03:21
【问题描述】:

我有一个导入到 Eclipse CDT 的 C++ 项目。我可以使用 Makefile 和参数设置来构建和运行项目。但是,当我尝试添加调试点并运行“调试为本地 c/c++ 应用程序”时,它会抛出一个错误 "Launching projectName" has encountered a problem. Error with command gdb --version 通过展开详细信息,它给出:Error with command: gdb --version Cannot run program "gdb": Unknown reason

我之前通过 Macports 安装了 gdb。如果我输入命令 ggdb 它会返回版本信息。如果我输入which ggdb,它会给出/opt/local/bin/ggdb。我尝试将“PATH”添加到调试配置-> 环境变量并为其提供路径值,但它不起作用。请问我应该如何设置路径并链接路径?变量名应该是什么。

我机器上的 gdb 版本是 GNU gdb (GDB) 7.7.1

补充:我查找了which ggdb 并使用 James 提供的链接来更改 gdb 调试器以浏览到该路径。但它仍然没有工作。

谢谢。

【问题讨论】:

  • 你用的是什么版本的gdb?
  • @JamesMoore:GNU gdb (GDB) 7.7.1 谢谢。

标签: c++ macos debugging eclipse-cdt


【解决方案1】:

看起来 Eclipse 正在使用默认的 gdb,这是在您从 macports 安装 ggdb 之前系统上的默认值。这个link 展示了如何更改调试器设置,将其更改为ggdb,这是 Macport 使用的名称。

从 Macports 安装 ggdb 后,您必须使用证书对其进行签名,以便允许它控制其他进程,请查看“Certifying GDB”here。创建证书后,请确保在签名时选择正确的名称:

$ codesign -s gdb-cert $(which ggdb) /// 'ggdb'

【讨论】:

  • 你试过完整路径/opt/local/bin/ggdb吗?
  • 我做了,但同样的错误仍然出现。请查看编辑后的屏幕截图。谢谢。
  • @user2751691 更新了一个链接,显示如何签署ggdb,如果您还没有这样做的话。
  • 非常感谢。这看起来像个把戏。但是有些命令需要权限,所以我使用了sudo,现在如果我调试它,它会给出:没有加载符号表。使用“文件”命令。
  • 现在它不会抛出错误,但没有输出,并且进度保持在99%......我必须强制退出才能退出eclipse,lol
猜你喜欢
  • 2010-12-07
  • 2017-09-08
  • 2013-12-23
  • 2013-01-18
  • 2015-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-13
相关资源
最近更新 更多