本人为了学习标准C++,偶选择了眼下如日中天的Eclipse做为IDE,为了让Clipse支持C++开发,除了要下载个CDT插件外,就是要下载并安装Cygwin(或者MingW)了。岂料Cygwin这东西可不是那么好下载的,两个星期以来我反反复复下载了不下一百次,尝试了无数种方法,总是下载到百分之二十几时就下载失败,一番呕心沥血之后终于摸索出了正确的下载方法,并将最新版的Cygwin(共有500多兆)全部下载成功。期间经历的种种甘苦,至今回味无穷。为了能让大家也能分享我的经验,避免走类似的弯路,现在我将自己总结出的Cygwin下载安装心得写出来,供感兴趣的人士参考,也是给自己做个纪念。
1. 下载、运行安装向导文件
一开始的下载方法,了解Cygwin的人都知道:就是到 : http://www.cygwin.com 中先当个安装向导文件setup.exe,这个是Cygwin的官方下载安装向导文件,而且也只能通过它才能正确下载最新的Cygwin版本(为何?稍后有说明)。
setup.exe下载完毕,双击运行,程序安装向导界面如下图所示:
点击“下一步” 继续,准备选择Cygwin的安装方式。
2. 选择安装方式
如上图所示,一共有三种安装方式:
(1)Install from Internet:直接从Internet上下载并立即安装(安装完成后,下载好的安装文件并不会被删除,而是仍然被保留,以便下次再安装)。
(2)Download Without Installing:只是将安装文件下载到本地,但暂时不安装。
(3)Install from Local Directory:不下载安装文件,直接从本地某个含有安装文件的目录进行安装。
强烈建议选择第(2)项,以便于能够手工指定安装路径。然后再点击”下一步“。
3. 设置安装文件的本地存储路径
由于我们选择的是直接下载的安装方式,所以必需指定好一个本地下载文件存储目录。安装目录所在的驱动器剩余空间必须足够(若要完全下载,至少需要600M以上的空间)。设置好后,点击“下一步”。
4. 选择连接方式
如上图所示,共有三种连接方式选择:
(1)Direct Connection:直接连接。
(2)Use IE5 Settings:使用IE的连接参数设置进行连接。
(3)Use HTTP/FTP Proxy:使用HTTP或FTP代理服务器进行连接(需要输入服务器地址和端口号)。
用户可根据自己的网络连接的实情情况进行选择,一般正常情况下,均选择第一种,也就是直接连接方式。然后再点击“下一步”。
5. 选择下载站点
经过一番搜索,安装向导为我们列出了众多可用的下载镜像站点以供选择,有HTTP的也有FTP的。说实话,这些站点我几乎都试过了一遍,真正能用的能给我留下深刻印象的寥寥无几。这里我只推荐一个站点:http://mirrors.kernel.org,又快又稳定。用户也可以自由决定倒底用哪个站点进行下载。另外,几个后辍为“.jp”的站点也还过的去,但不推荐。为啥?因为那是小日本的站点。
言归正传,选择好了没? 好, 点击“下一步”,向导会显示下图所示的信息:
注意!这并不是正式的下载,而只是安装向导从下载镜像站点上获取压缩过的安装列表文件。这个安装列表文件是Cygwin统一指定的,并随着新版本的发布而更新。安装向导就是通过它来得知究竟可以下载什么不能下载什么。并且该下载列表文件中还有包含有每个下载文件的MD5验证码,非常重要。
6. 选择所要下载/安装的安装包内容
安装列表文件下载完毕,向导会显示列表中的内容,供用户自由选择倒底需要下载哪些安装包。如何选择呢?只需用鼠标点击每个安装包名后面那个循环箭头图标即可:图标后面的文字是表示究竟对该安装包采取何种下载/安装方式,并随着点击而不断变化,共有这么几类:
(1)Default:这是默认选择,表示只下载/安装该包的缺省安装项(可点击包左边的+号展开,看看缺省安装究竟是些什么内容)。
(2)Install:表示要下载/安装该包的全部内容。所要求的空间也最大。
(3)Reinstall:表示重新下载/安装该包的内容(以上一次正常下载/安装时所选择的内容为准)。这个选项非常有用,稍后在下篇中会有说明。
(4)Uninstall:这个就不用解释了吧。
用户可根据自己的实际需要,来准定究竟下载/安装哪些内容。推荐选择“Install”方式,一步到位,免得日后被各种这样那样的问题所困扰。
至于窗口顶部那些“Keep”、“Prev”、“Curr”、“Exp”等等选项,只是用来改变当前树结构的显示方式的,对下载/安装没有什么影响。用户可以用默认的“Exp”。然后点击“下一步”,就要开始正式进行下载啦。
7. 下载
上图所显示的,就是下载进度窗口。可以看到当前下载的文件名称、文件大小、下载进度、总体下载进度等等关键信息。若当时选择的是Install方式以便下载全部文件,则下载时间会比较长,这时用户大可睡个觉或者干点其他事情。慢慢等吧。
如果用户的运气足够好,也许能够一次性的下载成功。若真能这样,恭喜恭喜!但如果你和我一样不幸,比如突然弹出下面这样一个窗口:
或者,有更倒霉的,像下面这样:
一个文件已经下载了98%,整个进度已进行了16%,向导却像死掉了一样,一动不动了。更有甚者,有一次我总体进度已经到了99%了,结果就僵在那里了。那怕你等上个一天一夜,向导仍旧是一动不动(偶就曾这么傻傻的等过,呵呵)。
我想这时候的你一定急的直跳:怎么了?怎么回事?怎么办?难道要我全部重新来一遍?但若重新来一遍,就一定能保证能成功吗?。。。。。
不必担心,有了本人的无数次下载尝试失败做为铺路石,你只需看本文的下篇:Cygwin完全下载指南(下)-中断下载续传篇,就能找到答案了。
上篇我们已经遇到个难题,就是Cygwin还没全部下载完全,向导程序就自己罢工不干了。怎么办? 继续等待?重新再来一遍?换个下载镜像站点?。。。都不是好办法,不保险啊。最好的办法,就是能让向导程序在上次异常中止的地方重新开始下载,继续下载。也就是类似于FTP的断点续传功能。
Cygwin的安装向导程序能够实现该功能吗?能!而且干的还挺漂亮,只不过。。。相应的设置实在是太古怪了,简直有误人子弟之嫌!我在尝试的时候,有N 回都已经几乎摸到门把手了,但就是因为心想:怎么可能会是这种配置呢?决对不行的!。。。。结果,像瞎子一样继续在黑暗中摸索了很久,才找到了出口。其中得出的教训远比得到的经验深刻~~~~闲言少叙,言归正传。
一但用户在下载过程中碰到了这种情况,不能浪费时间继续等待,因为那时安装向导实际上已经被中止了和站点的连接,只是它仍在那里不停的循环,不停的徒劳的尝试而已。我们唯一要做的也是唯一能做的,就是点击“取消”按钮,关闭该向导!不要心疼已经下载的那部分安装文件,不用担心,已经下载完毕的文件不会消失,而且还仍将有用。
关闭向导程序后,再重新运行它(一定要用你原先用的那个,而不能重新再当一个), 一路“下一步”下去(详细步骤可参阅上篇的内容,但要注意的是,进行本地下载存储路径设置时,必须和原先下载时的设置保持一致!),直到出现下图所示的站点选择窗口:
这时候,千万千万别去选择其他站点!对,仍旧选择你第一次下载时选择的那个!而且,向导程序也会根据你的下载日志,自动获得并定位到该镜像站点上。所以,这时你唯一要做的,就是点击“下一步”。
熟悉的安装包下载选择界面又出现了,如下图所示。
这个时候,要进行的设置就非常关键了:把ALL后面的Install改为Reinstall!哈哈,是不是有点什么想法了?对!Reinstall方式在安装时是表示重新安装,但在下载的时候表示的就是继续下载!这时我就不能不骂Cygwin安装程序的制作者了:你丫的程序界面怎么不设计的友好点?既然我前面选择是“Download Without Installing”,那你好歹在这项设置里面,把Install/Reinstall改换成Download/Continue Download才是啊。
好了不说了,都“Reinstall”了没?好,点击“下一步”。
向导程序现在已经知道你要继续上次的一载/续传了,它就会根据已经生成好的下载日志文件,对现有已经下载好的文件逐个做一把MD5校验码的Checking(如下图所示),确定已下载的部分没有任何问题。
不用点“下一步",向导程序会自动切换到下载界面中。
看看下图,看到了吗? 这一次的下载可不是从a字头的文件开始,而是直接从g字头的文件开始,哈哈!
恭喜,你可以长舒一口气了:原来如此
需要说明的是,这时候总的下载进度稍稍有不同:不再是整个下载的进度了,而是你剩余的需要下载的文件的进度。所以,当你看到一开始仍是0%时,大可不必担心。你原先下载的文件都在。
如果在续传时,安装向导程序又罢工了,只需将以上步骤重新来一遍即可,这种断点续传方式虽然土了点、怪异了点,可的确能保证你的下载能持续下去,直到全部 500多兆的Cygwin安装文件下载完成。至此,本下载指南算是完成任务了。至于如何安装,我这里就不凑热闹了,因为网上相关的文章多的是,随便搜一下就有一大堆。大家自己看吧,安装其实蛮简单的。
这次Cygwin下载磨难记,我更加验证了我自己的一宝贵信条:只要有一线希望,就绝不放弃!无论如何都不要放弃!你也许会说,傻B了吧,为何不直接下载 GCC包或者是MingW呢,一样可以让Eclipse支持C++开发啊。可是我想要下载Cygwin是有原因的:因为Cygwin是Win平台下的UNIX模拟环境,我们公司现在的服务器端就建立在HP-UX平台之上,通过Cygwin,我可以直接在现有环境境中初步学习UNIX相关知识,而不用对自己现在的电脑大动干戈。一箭双雕,何乐不为?
========================
顺便提醒一下:
(1)在用户指定的本地存储路径内,安装向导程序会生成类似这样的一个目录:http%3a%2f%2fmirrors.kernel.org%2fsources.redhat.com%2fcygwin,这就是你下载文件的真正所在目录。还会生成两个日志文件:setup.log和setup.log.full, 用户感兴趣的活,可以打开来看看,对了解Cygwin的下载机制有不少帮助。
(2) 如果用户线路不是很好的话,可选择晚上11:00以后至早上8:00点这一段时间,进行Cygwin的下载,那时候人少,连接比较稳定,速度也有保证:我在下载时,曾达到了180KB/s的高速,这对于连接一个国外下载站点来说,已经是相当快的了。