下载地址:http://www.eclipse.org/cdt/downloads.php
或者通过Ecplise自动升级功能进行安装,如下图所示:
添加地址: http://download.eclipse.org/tools/cdt/releases/juno
4、配置Ecplise的C/C++开发环境
(1)设置Ecplise与Cygwin的路径映射
按以下步骤打开Ecplise:
Window -> Preferences->C/C++->Debug-> Common Source Lookup Path -> add -> new "Path Mapping".
映射方法,如下图:
eclipse中调试时,由于GDB使用的unix格式的路径,而eclipse使用的是windows路径,导致找不到匹配的代码, 把linux的路径映射windows的路径:比如 /cygwin/c 映射成 C:\ 。
(2)配置C/C++的"Makefile Project",选择“PE Windows Parser", 和”Cygwin PE Parser" 两项。
5、在Ecplise中创建工程编写C/C++代码
(1)创建C/C++工程
点击”Next“,显示如下图:
点击”Next“,显示如下图:
点击”Finish“完成创建。
当编写好代码后,可以对你的工程进行编译,点击“Project”选项下的"Builder Project"项目即可。
编译后的工程,如下图所示:
此时是成功编译后“Consloe”控制台的显示画面。
点击上面选中的,然后点击鼠标右键,选择“Run”,即可运行程序。此时控制台即可打印出文字了。
到此我们就完成了Ecplise + CDT + Cygwin开发环境的配置,以后你就可以享用其方便的功能了。
6、常见问题
1、Eclipse下的CDT创建C++项目时候,不能自动生成includes文件夹
有两种解决方法:
(1)打开Window -> Preferences->C/C++->Environment,如下图所示,添加两个环境变量
将C_INCLUDE_PATH 设为 /usr/include 将CPLUS_INCLUDE_PATH 设为 /usr/include/c++
如果在Cygwin的/usr/include/目录下没有c++这个目录,可以从\cygwin\lib\gcc\i686-pc-cygwin\3.4.4\include\c++拷贝一个到目录下,或者直接添加这个目录都可以。
此步也可以解决代码中提示的显示信息”Unresolved inclusion:“问题,尽管不影响编译,只是无法定位头文件中的符号。
(2)在Windows里面,加入环境变量CPLUS_INCLUDE_PATH 和C_INCLUDE_PATH,并都设置成,安装的Cygwin的对应lib路径:D:\cygwin\lib然后再新建C/C++项目的时候,就可以自动生产Includes文件夹了。
2、用eclipse 建立编译C++工程出现错误提示 “symbol could not be resolved”
问题原因:是debug下的source lookup path没有映射正确。
解决办法:
window -> preferences -> C/C++ -> debug -> source lookup path > Path Mapping \cygdirve\c C:\
用cygwin下的c盘来替代当前的C盘 来查找需要的库文件,如果你的Cygwin安装在C盘,则映射C盘,如果安装在D盘,则映射为\cygdirve\d D:\,其他盘同理。
3、用eclipse 建立编译C++Debug工程出现错误提示以下错误
依然是上面映射的问题,打开Cygwin自带的“Cygwin Terminal”,然后输入以下命令“mount”如图所示:
上面就是我们设置的映射,如果没有你的Ecplise的Workspace所在的盘的位置的映射,请按照上面的说明进行添加,即可调试成功。例如,我的Workspace在D:盘下,则我想调试程序,必须映射到D盘的位置。
4、解决Eclipse的CDT编写的c/c++程序的运行结果不能输出到console的问题
(1)设置“Debug Configurations"里的“Environment”选项,添加PATH,指定X:\cygwin\bin的路径。
如图所示
(2)如果build不能通过
(编译正常通过后会出现类似下面的输出) **** Build of configuration Debug for project Test **** make all make: Nothing to be done for `all'. **** Build Finished **** 请按照上面步骤重新安装。