【问题】
CDT版本:5.0.0 ,即cdt-master-5.0.0.zip
Eclipse版本:3.4.2,即eclipse-SDK-3.4.2-win32.zip
Java版本:
C:\Documents and Settings\Administrator>java -version
java version "1.5.0_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03)
Java HotSpot(TM) Client VM (build 1.5.0_08-b03, mixed mode, sharing)
此CDT和Eclipse版本,根据官网说明
http://www.eclipse.org/cdt/downloads.php
是匹配的:
“CDT 5.0.x
CDT 5.0 runs with Eclipse 3.4 and is part of the Eclipse Ganymede simultaneous release. 。。。”
但是,昨天试了,5.0.1和3.4.2搭配,CDT不能用,无法出现C/C++项目。
换了5.0.0和3.4.2,折腾了很长时间,因为:
配置完所有的需要配置的信息后,去新建一个hello的C++项目,测试一下整个环境是否工作正常,
结果编译的console输出错误:
**** Build of configuration Debug for project helloCpp ****
Cannot run program "make": ????????
【解决过程】
去网上找了,出现此问题的人不多,遇到类似的问题的,就是
Cannot run program "make": Launching failed
但是,我这里不仅出现此问题,而且后面的信息显示“Launching failed”,都不正常,都显示问号。
呵呵。
别人的解决办法,
用Eclipse + CDT + MinGW做Windows编程(前言+***部分)
http://www.cnblogs.com/inshion/archive/2009/01/09/1372704.html
是很容易想到的,就是
1.先确认自己是否装了编译工具,不论是Cygwin还是MinGW都可以,但是一定是先装了对应编译工具。
2.然后再确认自己是否把对应的环境变量加如到Windows中的环境变量PATH中,
这些,我都去验证过了,我都设置好了的,而且,在Windows的cmd中输入make,和在Cygwin下输入make,
都是可以找到make工具的。
而且,也去
Eclipse的Project->Properties->C/C++ Build->Environment中去查看了对应的PATH变量了,
都是正确的:
D:\cygwin\bin;C:\Program Files\Java\jre1.5.0_08\bin\client;C:\Program Files\Java\jre1.5.0_08\bin;(中间省略);d:\Program Files\StormII
而且,还是保证我cygwin所在的路径是加在最前面的,而且我后来在***面也加了一个,也还是不行,
无意中,乱怀疑是否是反斜线"\"Eclipse也许识别有问题,然后又加了个
D:/cygwin/bin;
但是也还是不行。并且也去Windows中查看了PATH变量,包括系统和当前Administrator的,都是对的,都加了Cygwin的bin路径的。但是都还是无济于事。。。
【解决办法】
***的***,看到有个人也遇到这个问题:
http://xiaomaohaha.spaces.live.com/blog/cns!61AD5B3600FC2BDF!248.entry?sa=793804635
也是无法解决,所以,怀疑,是否可能是Eclipse和CDT的兼容性问题,
所以,用了昨天从网站下载的,已经集成了CDT的Eclipse:
eclipse-cpp-europa-fall2-win32.zip
然后,发现一切都OK了,Hello项目可以正常的编译输出了:
**** Build of configuration Debug for project helloCpp ****
make all
Building file: ../src/helloCpp.cpp
Invoking: Cygwin C++ Compiler
g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/helloCpp.d" -MT"src/helloCpp.d" -o"src/helloCpp.o" "../src/helloCpp.cpp"
Finished building: ../src/helloCpp.cpp
Building target: helloCpp.exe
Invoking: Cygwin C++ Linker
g++ -o"helloCpp.exe" ./src/helloCpp.o
Finished building target: helloCpp.exe
所以,现在可以确定,就是Eclipse和CDT的版本不兼容导致的。
加上昨天遇到的:
"cdt-master-5.0.1.zip和eclipse-SDK-3.4.2-win32.zip兼容性有问题,看不到新建C/C++项目的选项,换了cdt-master-5.0.0.zip就可以了"
【总结Eclipse和CDT的兼容性问题】
总结如下就是,已经遇到的bug:
1.cdt-master-5.0.1.zip和eclipse-SDK-3.4.2-win32.zip,无法使用C/C++项目
换成cdt-master-5.0.0.zip和eclipse-SDK-3.4.2-win32.zip,就可以用C/C++项目了
2.cdt-master-5.0.0.zip和eclipse-SDK-3.4.2-win32.zip虽然能新建C/C++项目,
但是无法正常编译,出现找不到make的bug,虽然你已经安装对应对应Cygwin的工具而且设置好了环境变量。
【题外话】
遇到这样的兼容性问题,真是够郁闷,而且还是官网号称是可以匹配的。
浪费了很长时间,真是不值得。
真是怀疑,官网那些开发者,是否做了兼容性测试。
希望以后这样的问题少出现一些,否则,不知道还有多少人会在此问题上白白浪费时间……
【编辑推荐】