4

我有一个相当尴尬的问题,因为这个问题在 linux 机器和我的 Windows XP 机器上都没有问题。但是现在,在终于切换到 Windows 7 64 位之后,我遇到了让 Eclipse 找到我的 C++ 包含文件的基本问题......

我的设置:
我正在运行 Windows 7 64 位。我已将 cygwin 安装到“C:\Program Files\cygwin”,将 Eclipse Juno 64bit 安装到“C:\Program Files\eclipse”。

我的问题:
我使用 Cygwin 工具链创建了一个基本的“Hello World”C++ Makefile 项目。编译工作没有问题,但 Eclipse 仍然抱怨它找不到“iostream”的包含。

我尝试了什么:
在项目属性 -> C/C++ 常规 -> 路径和符号 -> 包含中,我将 GNU C 和 GNU C++ 的包含目录设置为

C:\Program Files\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include

其中包含 iostream 包含在子目录中。这没有用

然后我尝试了确切的目录

C:\Program Files\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include\C++

包含 iostream。这次找到了include,但是即使重建了索引,Eclipse仍然无法解析std、cout和endl。然后我尝试了gcc 3.x版本的include目录

C:\Program Files\cygwin\lib\gcc\i686-pc-cygwin\3.4.4\include\C++

它奏效了。不幸的是,我需要 4.x 版本的 gcc,所以这对我来说不是永久的解决方案。

我的问题:
我怎样才能解决这个问题并让 Eclipse 找到 gcc 4.x 包含目录并正确使用它们?

4

1 回答 1

2

您必须让 Eclipse “忘记”并重新发现编译器的包含目录,而不是更改项目特定的更改。通过 Windows |执行此操作 偏好 | C/C++ | 构建 | 设置;您需要清除 gcc 的“发现”条目。

另见这个问题

于 2013-07-16T07:25:39.770 回答