Ecplise使用CDT插件开发C/C++,编译环境Cygwin
2013-06-27 01:23
302 查看
一、说明
借助Ecplise的强大功能,我们可以通过给Ecplise增加CDT插件来开发C/C++程序,下面是我配置CDT插件的总结过程,主要为了方便以后练习一些Demo程序时使用。编译环境采用的是Cygwin。使用Ecplise4.2 + CDT8.1.2 +Cygwin2.774。建议先阅读第6条的注意事项。强烈介意:先安装配置cygwin再安装cdt插件
二、具体安装步骤
为了保证安装顺利,请按以下步骤来进行。
1、安装Cygwin
下载地址:http://cygwin.com/setup.exe 官网:http://cygwin.com/
下载好后,点击setup.exe进行安装,出现如下图所示界面
![](http://images.cnitblog.com/blog/292928/201304/21011633-734c4137ac1448a09a454bbb8a156f3f.png)
点击“NEXT”后我们看到如下界面:
![](http://images.cnitblog.com/blog/292928/201304/21011637-b5d36d0353ca4d9cabc4cfa70007f2b8.png)
我们看到有三种安装模式:
Install from Internet,这种模式直接从Internet安装,适合网速较快的情况;
Download Without Installing,这种模式只从网上下载Cygwin的组件包,但不安装;
Install from Local Directory,这种模式与上面第二种模式对应,当你的Cygwin组件包已经下载到本地,则可以使用此模式从本地安装Cygwin。
从上述三种模式中选择适合你的安装模式,这里我们选择第一种安装模式,直接从网上安装,当然在下载的同时,Cygwin组件也保存到了本地,以便以后能够再次安装。选中后,点击“下一步”。
![](http://images.cnitblog.com/blog/292928/201304/21011642-224dc7e8b33d49359ae1e52edd05aab6.png)
这一步选择Cygwin的安装目录,以及一些参数的设置。默认的安装位置是C:\cygwin\,你也可以选择自己的安装目录,然后选择“下一步”,
![](http://images.cnitblog.com/blog/292928/201304/21011643-e5c2973e96cd40ac9726cb624fa3e831.png)
这一步我们可以选择安装过程中从网上下载的Cygwin组件包的保存位置,选择完以后,点击“下一步”,
![](http://images.cnitblog.com/blog/292928/201304/21011644-88ec41986c314a8fbe2a8d870d6746c3.png)
这一步选择连接的方式,选择你的连接方式,然后点击下一步,会出现选择下载站点的对话框,如下图所示,
![](http://images.cnitblog.com/blog/292928/201304/21011646-186d8434569e491da6e2060e1a89f39e.png)
此步选择第一个163提供的镜像网站就可以,国内下载速度挺快,如果有其他镜像,可以输入URL后,点击“Add”进行添加,然后再在列表中选中。选择完成后,点击“下一步”,进过下载几个文件后显示如下界面
![](http://images.cnitblog.com/blog/292928/201304/21011651-f67f789144a54c74b0ab29980afce19b.png)
下面就在这个界面中下载我们需要编译C/C++代码的Packages,我们只需要下载“Devel”分支下几个包就可以了,
gcc,
gcc-core,
gcc-g++,
gcc-mingw-core,
gcc-mingw-g++,
make ,
gdb,
binutils。
在上图的search框中输入gcc,程序会自动进行搜索,如下图,通过选择“Devel”分支下的包,找到安装我们需要的包,然后点击Skip来选择最新的安装包
![](http://images.cnitblog.com/blog/292928/201304/21011653-1e9811ed99244b3884a0a9f836dcc0b4.png)
这是已经成功安装最新版本包后的图示,大家单击“Skip”来选择最新版本的安装。
同理,输入“make”后,选择“Devel”分支下的包,下载如图所示的包:
![](http://images.cnitblog.com/blog/292928/201304/21011654-b4b1af1765b7479d9a0fa1c0333b422b.png)
输入“gdb”后,选择“Devel”分支下的包,下载如图所示的包:
![](http://images.cnitblog.com/blog/292928/201304/21011654-be86319045f049819bedf6890c8a94cd.png)
输入“binutils”后,选择“Devel”分支下的包,下载如图所示的包:
![](http://images.cnitblog.com/blog/292928/201304/21011655-38811ca6e37e4d6d8afa8a6140f31ff2.png)
选完以后,我们选择下一步,进入安装过程,如下图所示,
![](http://images.cnitblog.com/blog/292928/201304/21011703-010369fa67b94f9c8b9c5ca12899bcc0.png)
安装的时间依据你选择的组件以及网络情况而定。安装完成后,安装程序会提示是否在桌面上创建Cygwin图标等,点击完成退出安装程序。
![](http://images.cnitblog.com/blog/292928/201304/21011704-08f2dd66eb25411c9667038d7f085ae9.png)
2、配置Windows的环境变量
熟悉Java开发环境的都应该知道怎么找到环境变量,实在不知道的去百度下吧。
将cygwin\bin目录加入到环境变量PATH中。然后,打开cmd命令行窗口,分别试一下gcc , g++命令。
如果显示“访问被拒绝” (access denied), 进入cygwin安装目录\bin下检查g++.exe, gcc.exe是否只有1k大小,如果是,那么文件是符号链接,那么把文件重命名一下(备份)。 然后把g++-3.exe(或者g++-4.exe)拷贝一份,重命名为g++.exe。 把gcc-3.exe拷贝一份,重命名为gcc.exe。
3、下载Ecplise CDT插件
下载地址:http://www.eclipse.org/cdt/downloads.php
参考:Ecplise插件的安装的四种方法。
或者通过Ecplise自动升级功能进行安装,如下图所示:
添加地址: http://download.eclipse.org/tools/cdt/releases/juno
![](http://images.cnitblog.com/blog/292928/201304/21181520-6d6a4a9cf1cb42fd8cb70347a4eee60f.png)
4、配置Ecplise的C/C++开发环境
(1)设置Ecplise与Cygwin的路径映射
按以下步骤打开Ecplise:
Window -> Preferences->C/C++->Debug-> Common Source Lookup Path -> add -> new "Path Mapping".
映射方法,如下图:
![](http://images.cnitblog.com/blog/292928/201304/21181454-5a638ee0a34c462b905d3d23bd61eddd.png)
eclipse中调试时,由于GDB使用的unix格式的路径,而eclipse使用的是windows路径,导致找不到匹配的代码, 把linux的路径映射windows的路径:比如 /cygwin/c 映射成 C:\ 。
(2)配置C/C++的"Makefile Project",选择“PE Windows Parser", 和”Cygwin PE Parser" 两项。
![](http://images.cnitblog.com/blog/292928/201304/21011708-1be604c4071b46109fa875af3834f983.png)
5、在Ecplise中创建工程编写C/C++代码
(1)创建C/C++工程
![](http://images.cnitblog.com/blog/292928/201304/21181408-8a730c516a994db0b73e6da92775a3e3.png)
点击”Next“,显示如下图:
![](http://images.cnitblog.com/blog/292928/201304/21181426-c130af428b884169aabd876303c76c12.png)
点击”Next“,显示如下图:
![](http://images.cnitblog.com/blog/292928/201304/21181344-57c28524186a4402a385fcabb9feb800.png)
点击”Finish“完成创建。
![](http://images.cnitblog.com/blog/292928/201304/21181325-e32e99d34a3b41b9b3323aba465d96f0.png)
当编写好代码后,可以对你的工程进行编译,点击“Project”选项下的"Builder Project"项目即可。
![](http://images.cnitblog.com/blog/292928/201304/21181309-f90345297da34c518d99872f5436deef.png)
编译后的工程,如下图所示:
![](http://images.cnitblog.com/blog/292928/201304/21181247-d2ad654038584056b81b49d36c7681d0.png)
此时是成功编译后“Consloe”控制台的显示画面。
![](http://images.cnitblog.com/blog/292928/201304/21181224-402b02252af245e9bc04d2ecf0e347a4.png)
点击上面选中的,然后点击鼠标右键,选择“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++拷贝一个到目录下,或者直接添加这个目录都可以。
![](http://images.cnitblog.com/blog/292928/201304/21011713-bd0d11d8c3a141e398efffebd2e59996.png)
此步也可以解决代码中提示的显示信息”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工程出现错误提示以下错误
![](http://images.cnitblog.com/blog/292928/201304/21011717-f5d6b2c1f3f9448d942ca8ad7a9aa784.png)
依然是上面映射的问题,打开Cygwin自带的“Cygwin Terminal”,然后输入以下命令“mount”如图所示:
![](http://images.cnitblog.com/blog/292928/201304/21181149-46859b0849234d55bc9fdf27a4593234.png)
上面就是我们设置的映射,如果没有你的Ecplise的Workspace所在的盘的位置的映射,请按照上面的说明进行添加,即可调试成功。例如,我的Workspace在D:盘下,则我想调试程序,必须映射到D盘的位置。
4、解决Eclipse的CDT编写的c/c++程序的运行结果不能输出到console的问题
(1)设置“Debug Configurations"里的“Environment”选项,添加PATH,指定X:\cygwin\bin的路径。
如图所示
![](http://images.cnitblog.com/blog/292928/201304/21181118-fa3a51f0466e4cb3baaa35a82fa8f79c.png)
![](file:///C:/Users/THINKP~1/AppData/Local/Temp/Juziyue/Cache/Pictures/52197A79232ADA8797C076B4852AACD844D423B8.png?F70CC4CBA226FB37E7CB1CF0AF2AEABB3FF92B11)
![](file:///C:/Users/THINKP~1/AppData/Local/Temp/Juziyue/Cache/Pictures/52197A79232ADA8797C076B4852AACD844D423B8.png?F70CC4CBA226FB37E7CB1CF0AF2AEABB3FF92B11)
(2)如果build不能通过
(编译正常通过后会出现类似下面的输出)
**** Build of configuration Debug for project Test ****
make all
make: Nothing to be done for `all'.
**** Build Finished ****
请按照上面步骤重新安装。
http://www.cnblogs.com/zhxxcq/archive/2013/04/21/3033389.html
另附:http://blog.csdn.net/sinlff/article/details/7269196
相关文章推荐
- Ecplise使用CDT插件开发C/C++,编译环境Cygwin
- Ecplise编译Cygwin环境、使用CDT插件开发C/C++
- Ecplise使用CDT插件开发C/C++,编译环境Cygwin
- Ecplise编译Cygwin环境、使用CDT插件开发C/C++
- Ecplise编译Cygwin环境、使用CDT插件开发C/C++
- 配置cocos2dx安卓开发打包环境——使用Cygwin编译,ant打包
- Windows下使用VIM&Cygwin,搭建Mainframe开发环境(六)---用awk/sed合并PLI/Cobol编译结果
- Android NDK r8 Cygwin CDT 在window下开发环境搭建 安装配置与使用 详细图文讲解
- Eclipse+CDT+Cygwin在windows下部署C开发编译环境
- 使用Eclipse CDT插件开发C/C++时设置保存时编译文件
- Ubuntu使用eclipse搭建c/c++编译环境----CDT插件
- 如何在 Eclipse 中使用插件构建 PHP 开发环境
- eclipse android开发环境 bug CDT包含路径名无法修改(JNI开发使用)
- Windows环境下使用cygwin ndk_r9c编译x264
- NDK开发环境安装,CDT安装,Cygwin安装
- linux下Eclipse+CDT开发环境配置与使用
- eclipse 下用CDT插件开发gtk+程序的编译和链接设置
- 虚拟打印机开发日志(一):使用x64 WIN7编译环境编译的完整步骤
- win7 64bit 企业版 编译Hadoop2.7.2源码+插件+部署伪分布式开发环境
- linux下Eclipse+CDT开发环境配置与使用