重要声明:本文是我的2011.10在我的以前的ITPUB博客上发表的又一篇文章,记录了安装与下载Cygwin这个WINDOWS下LINUX模拟环境所经历的一些挫折。时至今日,我相信它还会对我的51CTO新开课程《基于CocoStudio开发跨平台拇指空当接龙游戏》的学员的学习具有重要参考价值,所以把它搬动到此地。

另外,提醒学员们注意:既然你选择了COCOS2D-X这种开发工具,必须意味着你具有想创建跨主流移动平台(在本人看来应当是:iPhone,Android和非常有可能对于前者将会在各方面构成极大威胁的Windows Phone 8)的游戏的野心,那么,在你的WINDOWS(建议WIN7 64位或者WIN8)环境下搭建Android开发环境很可能意味着你又要经历一次不同寻常的失败过程---相信你会被越挫越勇,并最终成功实现你的目标。为此,建议你参考一下我一路切身走过来后整理出来的几篇小文章---或许对你略有帮助。


在我的上一篇文章《Cygwin必读》中,我对下载Cygwin的一些重要细节进行了介绍。但是,今天我的心情更为激动,因为我刚刚成功地 在我的Windows 7机器上安装完成Cygwin。

说来非常惭愧,完成上面这个任务花费了近四天的业余时间。

首先, 对我安装Cygwin的重要影响的除了上一篇中提到的文章外,还有一篇也非常重要,就是http://hi.baidu.com /lizhengjun2010/blog/item/08b7fb1b79dc9befe1fe0b09.html。我从许多博客上看到有关这篇文章的 介绍。此篇的重要意义在于,下载Cygwin时不必相当然地选择安装所有,因为网速等原因常常导致你一次又一次地失败。我按照此君推荐的安装项,是12 个,在Windows 7机器上安装Cygwin,没有发现什么问题。

但是,有重要的一点值得一担,上一篇文章中提到的12个包中有一个名字不对。为了总结与强调,在此列举如下:
--------------------------------------
autoconf2.1
automake1.10
binutils
gcc-core
gcc-g++
gcc4-core
gcc4-g++
gdb
pcre
pcre-devel,这个正确的名称记得是libpcre-devel。你在安装过程的那个左上角的文本框中输入“pcre”一搜索就知道了。
gawk
make
--------------------------------------
我的安装方法与以前遇到的困难

我现在想来,是我的思维定势严重影响了我此前出现的失败。在我的记忆中,微软曾经推荐安装一个软件的方式是,关闭其他的软件,而通过“开始”-“运行”来启动安装文件,例如setup.exe,或者是install.exe。 就是这一点使我大大上当。

在下载了最新的setup.exe文件(在我的Windows7上显示的大小是550KB)后,我正是通过“开始”-“运行”来启动这个安装文件的。此后的许多操作,参考了网络上的许多选择方式,都不成功。现象是:

我 的安装以后的cygwin目录下(无论安装在C盘还是D盘),在home目录下什么东西都没有,这个在刚刚安装后似乎就应当是如此。但是,关键的是,根据 网络上的提示,无论是中文还是英文的,都提到etc/skel路径下存在文件bash.bashrc。但是,我的机器上恰恰就是没有skel文件夹???

我使用了多种方法,搜索再搜索,包括搜索安装之前的下载包,都没有发现skel和bash.bashrc的影子???!!!在这样的情况下,运行Cygwin.bat尽管OK,但是,也仅是表面现象。随后仍然出现许多错误(这里不再提及)。

后来,偶然间的一篇文章(http://hi.baidu.com/ceylon_yao/blog/item/c1ad151fe922a465ca80c4de.html)中提到:右键点击setup.exe,选择“以管理员的身份运行”。

上面的这一句提示令我心一动,是否是这方面的错误所致? 于是,我换种方式执行 setup.exe:在资源管理器中右键点击setup.exe,选择“以管理员的身份运行”

当然,根据以前的经历,我仅选择了上面的12个包。下载,先安装到本地,这是我极力推荐的。然后,再次运行setup.exe安装已经下载到本地的内容。结果,居然发现了上面的skel和bash.bashrc!!!

接下来,按照文章http://hi.baidu.com/lizhengjun2010/blog/item/08b7fb1b79dc9befe1fe0b09.html中所说,一一试运行,结果与之完全一致。为了突出,我把几个相应的图片上传过来,请诸位新手参考.

下面是首次安装成功Cygwin后,初次运行的运行时图。注意:没有前面那些白字,是不是你的安装就会有什么问题。



如上图中的文字所示,这样一运行后,home子目录下会自动创建Administrator文件夹,并在其下产生相应的配置文件。

下面是,我运行命令“cygcheck -c cygwin”后的截图。



下面是我试运行"gcc -v"和"g++ --version"及另外几个命令后的截图。



小结
我 想我此前失败的一个主要原因就在于思维定势:太相信在“开始”-"运行“中运行一个安装文件了。其实,WINDOWS7使用两年多了,感觉还是有太多的细 节有待探讨。真是没有想到这样的运行方式竟然不是”管理员方式“,从而导致后面的一系列的失败。纸上得来总觉浅,绝知此事有躬行,真真一点也假!

另一点教训就是,完全不必完全安装,为此可以先到官方网络http://cygwin.com上看看一些介绍,例如,Install Cygwin链接,FAQ链接,特别是Mirror Sites链接,非常有助于你选择尽可能准确而高效率的方式下载与安装Cygwin。

高兴之余,联想几天来的苦恼与参考网络上众位朋友的各种提示,不敢独享,特别细致写出,供WINDOWS7下安装Cygwin的朋友参考。如果再有问题,我们可以一起探讨。

注:我在WINDOWS XP下也安装了几次,也是遇到了失败,是否也与上面没有以”管理员方式“运行那个setup.exe致使没有产生ect下的skel文件夹及其下面的内容。我没有再安装试验,供想在Windows xp下安装cygwin的朋友参考。

另外,我按照上面方式在windows7下安装Cygwin后,这个C:\Cygwin的大小是387MB,系统提示占用磁盘空间是421MB。当然,我安装Cygwin的主要目的也是为了学习Android NDK的开发。