cygwin 确实很难下。郁闷了两天,终于看到了这篇文章。真的很感谢作者.

本人为了学习标准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完全下载指南(下)-断点续传篇

上篇我们已经遇到个难题,就是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的高速,这对于连接一个国外下载站点来说,已经是相当快的了。

安装Cygwin

还是依然点击setup.exe这个程序,不过这次我们选择的是:"Install From Local Directory",如图:
 
接着选择安装的目录,我这里是"D:/ProgramFiles/Cygwin",如图所示:
 
再接下来呢,选择的就是你下载回来的Cygwin包的路径了,而我这里路径是"D:/Tools/cygwin",如图所示:
 
可能有朋友无法确定自己的安装路径,其实很简单,本地安装包路径就是setup.ini这个文件所在的文件夹。
   
    紧接着的安装组件还是和之前一样,全部选择为install。点选下一步之后,就等着漫长的安装过程的结束吧,如下图所示:
 
5. 设置环境变量

安装完毕之后,为了能够方便编译NDK,最好是设置相应的环境变量。打开cygwin的安装目录下的home文件夹,然后进入到相应的用户名中,如果你发现该用户名下有.bash_profile文件,那么接下来就简单多了,直接用记事本打开该文件,然后在文件末尾添加如下文字:
    #创建NDK的路径,在windows中我的路径为:D:/ProgramFiles/Android/NDK
   NDK_ROOT=/cygdrive/D/ProgramFiles/Android/NDK
   #添加到PATH环境变量中
   export NDK_ROOT
   
    保存之后,打开cygwin,在命令行输入:cd $NDK_ROOT。这里注意,不像windows下的CMD,这里一定是区分大小写的。如果不出意外,就会进入到我们NDK的安装目录了。
   
    如果相应的用户名文件夹中没有改文件,可能问题就没那么简单了。如果你在该用户名下建立一个.bash_profile ,并添加了相应的文字,然后如上面所说一切正常的话,那么恭喜你!但事实上,往往不是那么顺利。很可能你会发现,即使我们在用户名下建立了该文件,但似乎环境变量根本没有成功设置。这个很可能是用户名所在的路径设置不对,要检验路径,直接在cygwin输入pwd即可。
   
    比如,我安装完毕之后,输入pwd,画面显示:
 
这意味着,如果我将.bash_profile放到D:/ProgramFiles/Cygwin/home/Administrator 是没有任何作用的,而应该放到D:/WorkPlace !
   
    那么,我们有没有办法更改这个目录呢?答案当然是可以,只要修改相应的环境变量即可。在"我的电脑"点击右键,然后按如下路径进行选择:属性 -> 高级 -> 环境变量。在上面或下面的框中,找到HOME这个环境变量,更改为相应的数值即可。更改之后,重启电脑,将.bash_profile拷贝到HOME变量指向的路径,启动cygwin,那么就可以生效了。这里需要注意,一定要重启电脑,否则这HOME变量之前的数值可能还会影响到cygwin。
   
    更改HOME变量数值之后,输入pwd,很明显看出,路径已经改变,NDK_ROOT变量也起作用了,如图: 
6. 编译程序

接下来,我们就来编译一个程序试试。

首先,在cygwin命令行界面进入到D:/ProgramFiles/Android/NDK/samples/hello-jni路径。如果对命令行不熟悉的朋友,可以输入如下命令:cd /cygdrive/D/ProgramFiles/Android/NDK/samples/hello-jni 
   
    然后输入"$NDK_ROOT/ndk-build"进行编译。$NDK_ROOT是之前在.bash_profile设置的环境路径,而ndk-build是调用NDK的编译工具。如果不出问题,它会生成一个libs目录,并且编译生成的.so文件也会悉数在此,如下图所示:
 
启动配置好的android的java开发环境,比如说Eclipse + CDT,然后创建一个Android项目,选择Create project form existring source location =D:/ProgramFiles/Android/NDK/samples/hello-jni,确认后即可开始编译并生成apk文件,然后运行该程序即可。关于如何搭建Eclipse + CDT编译环境来编译android程序,我们下一篇文章再详解。

Cygwin 完全下载及安装相关推荐

  1. Cygwin的下载和安装配置

    目录 一.Cygwin介绍 1. 什么是Cygwin 2. Cygwin的组成模块 3. Cygwin的工作机制 二. Cygwin的下载和安装 三. 配置环境变量 四. Cygwin的卸载 1. 删 ...

  2. NIST随机数测试软件下载,安装、和使用,分析方法最新版(19年4月)

    NIST随机数测试软件下载,安装.和使用方法 NIST简介 NIST下载与安装 NIST软件的使用 NIST软件使用过程中可能的出错 如何查看finalAnalysisReport.txt和freq. ...

  3. 目前最新NIST随机数测试软件下载、安装、及使用教程

    看了太多的NIST的安装教程,让我白白浪费了一下午,现在提一些细致的问题. 简介啥的就不说了.懂得自然懂. 一.软件下载 1.下载cygwin: 下载链接:Cygwin 具体安装方法如下,本文不在细说 ...

  4. MSYS的下载与安装

    文章来源http://code.google.com/p/msys-cn/ 简介 本网站通过自行开发的mpkg包管理程序,提供MSYS发行版的下载服务: MSYS是Windows环境上的UNIX工作环 ...

  5. MinGW下载和安装

    原文链接:MinGW下载和安装教程 要知道,GCC 官网提供的 GCC 编译器是无法直接安装到 Windows 平台上的,如果我们想在 Windows 平台使用 GCC 编译器,可以安装 GCC 的移 ...

  6. MinGW下载和安装教程

    要知道,GCC 官网提供的 GCC 编译器是无法直接安装到 Windows 平台上的,如果我们想在 Windows 平台使用 GCC 编译器,可以安装 GCC 的移植版本. 目前适用于 Windows ...

  7. luajit开发文档中文版(一)下载和安装

    2022年6月10日15:32:51 luajit开发文档中文版(一)下载和安装 luajit开发文档中文版(二)LuaJIT扩展 luajit开发文档中文版(三)FAQ 常见问题 luajit开发文 ...

  8. MySQL下载与安装教程以及环境变量配置

    MySQL下载 1 搜索mysql 选择mysql downloads 如下 2 点击滑动到底部选择社区版本(免费) 如下 3 选择Community Server 如下 4 选择对应的版本下载 我选 ...

  9. java jdk 1.8 安装_下载、安装、配置 java jdk1.8

    近期配置react native的开发环境,所以就从配置环境开始.rn的环境配置有那么几项,其中重要的一个就是java jdk(Java Development Kit 的缩写),那么以下就是下载.安 ...

最新文章

  1. mongodb集群 java_MongoDB集群JavaAPI插入数据
  2. linux和windows中insert语句注意
  3. C#调用python文件
  4. Nginx模块之SessionSticky
  5. 服务器排障 之 nginx 499 错误的解决
  6. eShopOnContainers 知多少[4]:Catalog microservice
  7. coreos 安装mysql_如何执行CoreOS Linux的裸机安装
  8. jQuery Event.delegateTarget 属性详解
  9. mybatis3文档
  10. iOS开发之tableHeaderView的那些坑
  11. Adblock Plus官网最新下载 中文,绿色版Adblock Plus下载谷歌插件,edge,电脑版exe,火狐版,搜狗浏览器,ie浏览器
  12. 微信小程序自定义底部导航栏组件
  13. zebra扫码枪复位_条码扫描枪设置使用说明详解
  14. VScode使用element-ui插件准备
  15. 读书笔记:《关于上班这件事--自序·朱德庸》
  16. 清华校友走进百度 用科技赋能产业智能化转型
  17. 我国重点区域加快智慧城市规划布局
  18. 阿里云使用笔记(一):从零开始配置阿里云GPU服务器训练深度学习模型
  19. OpenAI ChatGPT,爆火的OpenAi的ChatGPT聊天机器人注册和使用攻略,满满诚意哦
  20. 硬盘分区MBR和GPT知识详解

热门文章

  1. docker mysql volum_docker volume 使用
  2. 资金存管,专治各种预付无良商家卷款跑路
  3. 如何看电脑支持最大多少内存条?仅需一个命令
  4. 计算机系统使用寿命,笔记本电脑的使用寿命是多久,你了解吗?
  5. Android 引入第三方字体库的简单使用
  6. 设置esxi主机时间
  7. 《信息物理融合系统(CPS)设计、建模与仿真——基于 Ptolemy II 平台》——2.7 高阶组件...
  8. Java实现哥德巴赫猜想
  9. 辉太郎看前端(query和params)
  10. 新浪微博PC端模拟登陆