我在Windows上使用Eclipse来使用Cygwin的工具链来编写C++.我也想用它进行调试,但我的问题如下:
要调试的可执行文件位于工作区的子文件夹中(非常标准,我猜)但不是构建可执行文件的实际项目.
Eclipse和GDB具有不同的路径格式:Eclipse使用Windows路径,而GDB使用posix路径.Eclipse知道D:\Path\To\Exe
GDB需要/cygdrive/d/Path/To/Exe
.
Eclipse 坚持认为,当我在"Debug configurations ..."对话框中输入路径时,它可以找到要调试的可执行文件."调试"按钮被禁用,直到路径正确为止.
Eclipse似乎没有接受${workspace_loc}
那个特定的输入框.
有一些我不知道的隐藏选项吗?你以前遇到过这个问题吗?
到目前为止我尝试过的
强制Eclipse传递我输入到GDB的路径--- 不起作用.
摆弄源查找路径和路径映射--- 不起作用,它实际上只适用于源文件.
为可执行文件所在的输出文件夹创建一个C++项目,所以我可以在项目中有一个相对的exe路径--- 不起作用.
我仍然可以尝试的事情
使用该.gdbinit
文件丢弃Eclipse给出的路径并使用posix路径加载真实的可执行文件---尝试过,但不是很难.
指定包装器作为GDB的参数---污染我工作区的根.
提供我自己的插件来处理这个案例---添加另一段代码来维护另一种语言.
小智.. 13
在Eclipse中的Preferences-> C/C++ - > Debug - >"Common Source Lookup Path"中添加新的路径映射.作为编译路径,您应该使用类似Unix的路径(例如/ cygdrive/c),作为本地系统路径,您应该像路径一样使用Windows(例如c :).
在Eclipse中的Preferences-> C/C++ - > Debug - >"Common Source Lookup Path"中添加新的路径映射.作为编译路径,您应该使用类似Unix的路径(例如/ cygdrive/c),作为本地系统路径,您应该像路径一样使用Windows(例如c :).