«

»

Win下Cygwin及Eclipse C++开发环境的安装

cygwin eclipse c语言本机上的VMware 8.0能配置64位 linux虚拟硬件,并安装rhel 5.5成功,但linux图形环境使用eclipse始终不太舒服。应用最终将在rhel 5.5和gcc环境下编译运行,因此在winxp下安装eclipse,并安装gcc for windows 成为选择。在mingGW和cygwin上,自然选择了后者。

从Cygwin主页下载,只有setup.exe一个文件。运行,将会让用户选择是从internet直接安装,下载,或者从本地目录安装。因cygwin整个系统是一组包文件。

选择只从internet下载,以备重装之用。仅选择了开发库,大约有800多M。

下载后,运行setup.exe 选择了库的保存目录,安装顺利完成。

启动cygwin环境,gcc –version正常打印版本信息,4.5.X版本大概。

然后下载eclipse CDT集成开发环境。解压缩后,在创建工程时,直接有选择C编译环境的选择,因本机先前有VS编译环境,所以自然有cygwin和vs的两种选择,选择第一种。这里比较奇怪,cygwin安装时大约不会写注册表,那么eclipse怎么知道存在cygwin的gcc编译器呢?不去管它。

创建个ansi C的样例程序,build成功,运行,问题出现了,无错误提示,也无结果输出。

在eclipse中未找到选择c 编译器的地方,以前eclipse java开发环境是有的。想想,cygwin的shell其实是个unix bash的模拟器,而elcipse直接运行cygwin编译器生成的程序,因未在cygwin环境下运行,自然不会成功。在windows文件夹下直接双击testc.exe,果然报错。恍然大悟,将cygwin的运行库文件cygwin1.dll 拷入windows的system32目录下,在ecliipse环境下运行testc程序,输出正常,在win系统下直接运行testc程序,亦正常。

Cygwin1.dll大约起了将C函数包装成unix api的作用。

注:后期重启eclipse时(使用的大约是3.7版本),发现cygwin gcc居然消失了,删除workspace目录也没有用,重新安装eclipse也无用,纠结很长时间。后来发现取消下面选择适用本平台gcc编译器的复选框,然后手工指定cygwin编译器,仍可以正常编译。只是不知为何出现过的cygwin gcc选项消失了。

调试问题:调试时果然如一些文章所称出现了错误,简单的说就是windows目录与unix文档目录间映射出了问题。在windows->preference->c/c++->debug->source lookup path中,添加一条目录映射,将/cygdrive/e映射为e:\,这样gdb将可正确找到存放于e盘相应目录下的源文件。映射有优先次序,将此条置于最上一条,即可正常调试。

1 星2 星3 星4 星5 星 (尚无评分)
Loading...Loading...

相关文章

Python的SWIG,ctypes等与C的互操作性 在许多情况下,Python能够调用C模块或者C里面调用Python解释器是非常有用的,语言之间取长补短有助于更...
Linux的.so文件调用embed Python的问题 Python 2.7.3用./configure make make install生成后,在其目录下有libpython2.7.a文件。此文件可用于对...
Linux下编译安装Python 2.7.3的问题 下载了linux版的python 2.7.3的安装包,解压缩,./configure make和make install,然后python顺利升级至...
ProGuard的使用 ProGuard主要是一个Java混淆器,用来防止别人反编译你的代码。eclipse indigo里自带的有proguard,在项...
Eclipse中的Jar打包工具 Eclipse中选择export,可将项目文件打包为Jar文件,但是对于外部的Jar文件则无法包含进去。比如JDBC驱动...
Eclipse中用Logcat调试程序 调试程序的一种方法是用Logcat程序,在Eclipse中windows->show view->other->android->logc...
ADT安装时的悲剧 安装ADT,很认真的翻墙看了文档,官方推荐使用的Eclipse是Classic版本,推荐使用的Android SDK是exe安装...
如何在XAMPP中安装多个WordPress站点? XAMPP用于个人PHP网站的测试是十分方便的,但是在其官网提供下载的WordPress模块,安装后,默认是在本机...

1 条评论

  1. 防火板

    好文章,内容文笔犀利.

发表评论

电子邮件地址不会被公开。