eclipse - 如何让 Eclipse 为 Cygwin 的 GDB 提供可执行文件的 posix 路径?

标签 eclipse gdb cygwin

我正在 Windows 上使用 Eclipse 使用 Cygwin 的工具链对 C++ 进行编程。我也想用它来调试,但我的问题如下:

  • 要调试的可执行文件位于工作区的子文件夹中(我猜这是相当标准的),但不是构建可执行文件的实际项目的子文件夹。
  • Eclipse 和 GDB 具有不同的路径格式:Eclipse 使用 Windows 路径,而 GDB 使用 posix 路径。 Eclipse 知道 D:\Path\To\Exe 而 GDB 需要 /cygdrive/d/Path/To/Exe
  • Eclipse 坚持当我在“调试配置...”对话框中输入路径时,它可以找到要调试的可执行文件。在路径正确之前,“调试”按钮将被禁用。
  • Eclipse 似乎没有在该特定输入框中输入 ${workspace_loc}

是否有一些我不知道的隐藏选项?您以前遇到过这个问题吗?

到目前为止我尝试过的内容

  • 强制 Eclipse 将我输入的路径传递给 GDB --- 不起作用。
  • 摆弄源查找路径和路径映射 --- 不起作用,它实际上仅适用于源文件。
  • 为可执行文件所在的输出文件夹创建一个 C++ 项目,这样我就可以获得项目内 exe 的相对路径 --- 不起作用。

我仍然可以尝试的事情

  • 使用 .gdbinit 文件放弃 Eclipse 给出的路径并使用 posix 路径加载真正的可执行文件 --- 尝试过,但不是很难。
  • 指定一个包装器作为 GDB 的参数 --- 污染我的工作空间的根目录。
  • 提供我自己的插件来处理这种情况 --- 添加另一段代码以另一种语言进行维护。

最佳答案

在 Eclipse 的“首选项”->“C/C++”->“调试”->“公共(public)源查找路径”中添加新的路径映射。作为编译路径,您应该使用 Unix 类路径(例如/cygdrive/c),作为本地系统路径,您应该使用 Windows 类路径(例如 c:)。

关于eclipse - 如何让 Eclipse 为 Cygwin 的 GDB 提供可执行文件的 posix 路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/541099/

相关文章:

java - 实现 Google Maps Android 时出错 - SupportMapFragment 无法解析为类型

eclipse - Ctrl Space 在 Win 7 上的 Eclipse Helios 中不起作用

gdb add-symbol-file所有节和加载地址

node.js - 在 cygwin xterm 上执行 npm 链接时出现 EPERM 错误

windows - 如何通过 Cygwin 在 Windows 上安装 sshpass?

同时java桌面和android应用程序 - 共享包

java - 如何使用RadioGroupFieldEditor管理其子组件

gdb - 在Qt-Creator中访问gdb控制台

c - 如何知道哪些函数引用了哪些全局变量或静态变量? (C)

c++ - 在cygwin中使用mingw编译器编译c++程序时缺少dll