关于c ++:Win7中的Eclipse CDT(Juno):在PATH中找不到g ++,iostream未解析和其他有趣的东西

Eclipse CDT (Juno) in Win7: Cannot find g++ in PATH, iostream unresolved and other fun stuff

我出于绝望而来到这里,你们是我最后的希望。

从昨天开始,我一直在解决标题中的问题,对于我的生活,我找不到什么问题。

由于Eclipse无法找到g ++编译器,因此无法构建简单的hello world程序。 我已经设法在Project-> Properties-> C ++ BuildEnvironment中找到PATH变量,它设置为C:\Users\Dimitris\Documents\eclipseCPP\eclipse;C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bin\x86;C:\Program Files (x86)
VIDIA Corporation\PhysX\Common;C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\TortoiseSVN\bin;C:\Program Files (x86)\Windows Live\Shared;D:\Users\Dimitris\AppData\Local\Photran\MinGW\bin;C:\Program Files (x86)\VDownloader;E:\Program Files\VDownloader;E:\Program Files (x86)\FAHClient

显然,那里有些不对劲。

对于"未解决的iostream"问题,我尝试在Project-> Properties-> C / C ++ General-> Paths and Symbols-> Include选项卡中设置我的包含路径,然后添加整个MinGW文件系统,但无济于事。 令人惊讶的是,添加一个MinGW的子树 - 即非常级别的iostream被设法使Eclipse看到iostream,尽管程序仍然无法理解cout或std。
我安装了MinGW,Cygwin和cygnus。

正如我之前所说,该计划是一个简单的问候世界。 它不会建立。

1
2
3
4
5
6
7
8
#include <iostream>
using namespace std;

int main()
{
    cout <<"!!!Hello World!!!" << endl; // prints !!!Hello World!!!
    return 0;
}

你确定你的PATH中有g++.exe吗? (我看到你的路径中有D:\Users\Dimitris\AppData\Local\Photran\MinGW\bin。那里有g++.exe吗?)

如果你转到命令提示符(cmd.exe)并输入g++ -v enter它是否找到gcc并打印出版本?

另一件事 - 你是如何创建项目的?

如果您选择File -> New -> C++ project -> Hello World,并且您的gcc编译器在您的路径中,那么您应该很高兴。

这是使用上述方法创建的简单Hello world项目的输出

** Build of configuration Debug for project foobar **

make all

Building file: ../src/foobar.cpp

Invoking: GCC C++ Compiler

g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/foobar.d"
-MT"src/foobar.d" -o"src/foobar.o""../src/foobar.cpp"

Finished building: ../src/foobar.cpp

Building target: foobar Invoking: GCC
C++ Linker g++ -o"foobar" ./src/foobar.o

Finished building target: foobar

** Build Finished **