12

我安装了cygwin(最新的1.7.xx?),然后安装了eclipse cdt(Juno)。

当我尝试构建一个 hello world 项目时,尽管 eclipse 识别出 cygwin 已安装,但它没有工作。

于是我手动将c:\cygwin\bin添加到了路径中,这样就找到了cygwin中的所有可执行文件,包括g++、make ld等。

现在eclipse可以构建项目了,但是调试的时候gdb启动了,找不到源代码。它声称它找不到:

/cygdrive/c/users/me/workspace/test1/test1.cc 。即使那正是它所在的地方。好像cygwin的目录系统不起作用。

我可以从以下位置手动加载源:

c:\users\me\workspace\test1\test1.cc

并且调试器可以工作,但是下次我开始一个新项目时,我必须再做一次。您如何指示 eclipse/cygwin 组合正确查找源代码?

或者,Mingw 更容易吗?我在 eclipse 中遇到了类似的问题,看到 mingw 在那里,但是构建失败,因为它没有找到可执行文件。

4

6 回答 6

16

这是我如何使它工作的。

  1. 我转到窗口 ==> 首选项 ==> C/C++ ==> 调试 ==> 源查找路径
  2. 我添加路径映射:项目源
  3. 在左侧,我放置了 Cygwin 期望的路径,即 \home\MyName\projects,在右侧,我放置了 Windows 路径,即 C:\cygwin\home\MyName\projects

然后当我调试它发现源文件很好。

于 2013-10-04T17:49:50.690 回答
12

转到 Windows-> 首选项-> C/C++ -> 调试 -> 源查找路径。添加以下“路径映射”。

\cygdrive\c -> c:\
于 2014-04-09T20:44:53.853 回答
3

虽然上面给出了很好的答案,但有时它仍然可能无法解决问题唷!!!!

假设你在 C: 中安装 Cygwin,但你的 Eclipse 工作区在 D: 中,那么你的安装有问题

您应该做的就是,打开 cygwing shell 并输入“mount”以获取以下内容:

  Ritvika@Ashutosh ~
  $ ls

  Ritvika@Ashutosh ~
  $ mount
  C:/cygwin64/bin on /usr/bin type ntfs (binary,auto)
  C:/cygwin64/lib on /usr/lib type ntfs (binary,auto)
  C:/cygwin64 on / type ntfs (binary,auto)
  C: on /cygdrive/c type ntfs (binary,posix=0,user,noumount,auto)
  D: on /cygdrive/d type ntfs (binary,posix=0,user,noumount,auto)

  Ritvika@Ashutosh ~
  $

这里我的项目都在 D:\ECWorkSpace 下,所以我的映射需要在 Eclipse 中显示为:/cygdrive/dd:/

因此,现在有了这些知识,就可以按照 PathM 所说的去做

 1. goto Window ==> Preferences ==> C/C++ ==> Debug ==> Source Lookup Path
 2. Add a Path Mapping: Project Source
 3. On the left side put "cygdrive\d",  & on the right put : "D:\"

这应该有效。(它对我有用:))您也可以查看此常见问题解答:https ://wiki.eclipse.org/CDT/User/FAQ#I.27m_using_cygwin_and_when_launching_the_debugger.2C_it_complains_that_it_can.27t_find_the_source_file

于 2015-07-03T22:43:56.153 回答
2

我使用 MinGW + CDT,它让我非常满意。我安装了很多次,从来没有任何分歧。没有比你用 cygwin 做的更多的配置。下载面向 C/C++ 开发人员的 Eclipse(可能是您所做的)以获得CDT(MinGW Tool Chain -> gdb + gcc)直接运行。将您的\\MinGW\bin\目录设置到您的目录PATH中,您应该一切顺利...

注意:与 Cygwin 一样,MinGW 提供了类似 Linux 的 Shell。

对于 MinGW-64,现成的构建更难找到。见这里

于 2013-06-24T03:46:05.223 回答
0

在此处查看“通用源查找路径”的设置:http ://wyding.blogspot.dk/2009/04/setup-cygwin-toolchain-in-eclipse-cdt.html

于 2013-06-26T11:02:09.713 回答
0

我用 msys gdb 替换了 gdb。例如:

当前配置:

... Application Configuration .. Debug .. Debug

GDB Debugger gdb

GDB Debugger path to msys gdb (like for example c:\msys\bin\gdb.exe
于 2022-01-26T12:10:25.133 回答