Windows下Cygwin安装使用教程

CygwinWindows平台上运行的UNIX模拟环境,它对于学习UNIX/Linux操作环境,或者从UNIXWindows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用GNU工具集在Windows上进行嵌入式系统开发,非常有用。

一、Cygwin的安装

  1. 下载Cygwin,这个可以到这里下载 ,至于使用32位的还是64位的版本可以根据自己的系统而定,打开下载好的setup-x86.exe(以64bit Windws系统为例) 。

  2. 我这里选择的是2.876(64位)版本

190218174280221.png
  1. 第一个选项是在线安装,第二个选项是只下载不安装(然后手动安装),第三个指你已经下载了安装包,通过已经下载的本地安装包安装,若是第一次安装,选中第一个即可(默认),【下一步】
190218174280222.png
  1. 指定unix系统的根目录,以及限定那些用户可以访问这个目录。安装目录别为中文名,以免出错,接入网站如果不行,提示错误,那就重新来换一个接入网站,建议这个路径要指定在空间比较大的硬盘,在后面的开发中,这个目录是工作目录,随着积累会越来越大
190218174280223.png
  1. 指定包的下载目录,安装完成以后可删除,下面的单选框默认即可,【下一步】
190218174280224.png
  1. 选择连接方式,如果用的是外网,选择第一个(默认)即可,如果使用的是公司网或者其他需要代理的内网,记得使用相应的代理,一般如果默认浏览器有设代理,选择第二个就好,如果默认浏览器没有设代理,则使用第三项自己配置代理,【下一步】
190218174280225.png
  1. 选择一个镜像站点,任选一个即可,按Ctrl键可选中多个。这里需要注意一下,对于国内的用户,强烈建议使用国内的镜像,这样可以在后面的下载过程中有更快的速度,比如我这里使用的是http://mirrors.163.com/cygwin/,我用10M的宽带,下载速度能够达到2M多;【下一步】
190218174280226.png
  1. 这一步很关键,选择要下载和安装的包,根据你的需要选择包,选的包越多所需的下载时间越长,单击【View】可以在分类、全部、已选之间循环切换,点击每一类前面的加号可以展开,要选中每一个包,只需单击每一行前边像循环的那个图标,会在版本号和Skip之间切换,选一个最新的版本号即可,下边的那个复选框默认即可。

为了后面的操作,我们有必要在这里选择一些必要的包进行安装:
Python;

  (1) curl;
  (2) git* (git,git-completion, git-gui, gitk); 
  (3) libreadline6, libiconv2;
  (4) vim, ctags
  (5) Python
  (6) lynx
  (7) wget, tar, gawk, bzip2

当然其中有一些是已经就默认勾选的,在选择的时候只要在search里面输入对应名称,它就会自动过滤出你要安装的包了,然后将循环Skip切换成你需要安装的版本就好了,一定要记得在搜索的时候不需要按Enter, 不然就直接跳到下一步了。

190218174280227.png
  1. 选好后【下一步】下图,会显示你选择的安装包:
190218174280228.png

单击下一步开始安装,最后会让你让你选择是否生成快捷方式,然后**OK了!

以后要安装新的安装包,或是更新,还是通过这个过程,运行setup.exe选择安装包即可。

二、Cygwin的配置

打开Cygwin 终端(Cygwin64 Terminal),右击打开 Options...选项
Text可以设置字体的一些属性,如大小、编码,Locale 选择C, Character set 选择 UTF-8,可以避免中文显示乱码

三、安装apt-cyg

这时就可以打开Cygwin64 Terminal,开始像正常linux终端一样在windows下工作了,但是现在还是比较粗糙,缺少很多我们必要的比如一些依赖库和命令,而且我们比较熟悉的apt-get也没有,在Cygwin中,我们使用apt-cyg来下载和管理安装包,下面我们来介绍怎么安装它:

现在googlecode关闭了,以前网上搜的好多办法都不可行了,没法用wget安装apt-cyg

找了半天只有github里有个方法可行:

apt-cyg is a simple script. To install:

  lynx -source raw git.com/transcode-open/apt-cyg/master/apt-cyg > apt-cyg
  install apt-cyg /bin

Example use of apt-cyg:

  apt-cyg install nano

四、安装repo

mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo

chmod a+x ~/bin/repo
// 如果上述 URL 不可访问,可以用下面的:
//curl https://storage-googleapis.lug.ustc.edu.cn/git-repo-downloads/repo > ~/bin/repo

这时候repo命令就可以用了,可以用 ~/bin/repo init --help 命令测试一下,不过关闭终端以后,需要重新配置一下环境变量

PATH=~/bin:$PATH

或者将它加到 /.bashrc 里面,然后export一下也行。

下面我们可以用repo初始化一个仓库:

  1. mkdir WORKING_DIRECTORY //随便创建一个目录
  2. cd WORKING_DIRECTORY</pre>

repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest
//其中repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest是清华提供的镜像源
//repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest是中国科技技术大学的镜像源
// 如果提示无法连接到 gerrit.googlesource.com,可以编辑 ~/bin/repo文件,把 REPO_URL 一行替换成下面的:
//REPO_URL = 'https://gerrit-googlesource.lug.ustc.edu.cn/git-repo'

初始化一个Android项目用于测试(将上面初始化仓库的操作换成)

  1. repo init -u git://mirrors.ustc.edu.cn/aosp/platform/manifest -b android-4.0.4_r2.1

下载并同步源码树,这时下载速度就和你的宽带和选择的镜像源有关了,所以国内还是建议使用163的源

  1. repo sync

当你需要暂停时只需要ctrl+c就可以暂停同步,repo是支持断点续传的,关机你也可以再次来到工作目录执行repo sync继续同步!
当然同步过程可能会经常性的卡住,这时候我们可以使用一个脚本来帮忙vim dowmload.sh,将下面的祖传代码写入dowmload.sh中:

 #!/bin/bash     
    echo "======start repo sync======"     
    repo sync     
    while [ $? == 1 ]; do     
    echo "======sync failed, re-sync again======"     
    sleep 3     
    repo sync     
    done

chomd a+x download.sh让其可以运行,然后终端输入./download.sh就可以开始下载了,用这一步代替官方文档里的repo sync。当连接不上终端时休息3毫秒然后再自动repo sync,这样就不用一直等着了。

repo其实是一个脚本,它可以同时管理多个git仓库,而一个git仓库只能维护一份项目代码,关于repo命令的详细可以自寻搜索,也可以参考这里和 repo 用法详解

==================================================================================================

Cygwin作为Windows下模拟Linux环境的的工具,使得我们能在Windows下非常方便的使用Linux的命令和工具,下面讲讲怎样在Cygwin添加不支持的命令。

一、安装cygwin工具的安装工具apt-cyg,此工具类似于Ubuntu下的apt-get工具,所有的工具都是通过他安装,用过Ubuntu的人应该都知道

#wget http://apt-cyg.googlecode.com/svn/trunk/apt-cyg 
wget http://w.gdu.me/wiki/files/shell/apt-cyg

或者直接从这里clone  https://github.com/transcode-open/apt-cyg

chmod +x apt-cyg 
mv apt-cyg /usr/local/bin/ 
apt-cyg --help 
cygcheck --help 
# 修改软件源 
apt-cyg --mirror http://mirrors.163.com/cygwin 
#下面是可选的源 
# ftp://mirror.mcs.anl.gov/pub/cygwin 
# http://mirrors.163.com/cygwin 
# ftp://ftp.ges.[RedHat](https://www.linuxidc.com/topicnews.aspx?tid=10 "RedHat").com/private/releng/cygwin-1.8

二、完成以上步骤之后,就可以随便安装相应的软件了

# apt-cyg install man cygwin-doc 
apt-cyg install vim screenwget subversion openssh pwgen gzip bzip2 curl rsyncbash-completion lftp nc tree p7zip connect-proxy util-linux bind-utils inetutils 

三、添加常用Linux命令

给Cygwin添加more/col/whereis等命令
安装util-linux包:apt-cyg install util-linux
给Cygwin添加telnet/ftp工具:apt-cyg install inetutils
给Cygwin安装dig命令
安装bind-utils包:apt-cyg install bind-utils
检查系统中已设置好DNS: ipconfig /all

得到Windows格式的路径名?

cygpath
-d -m "`pwd`"

Cygwin 3.0.0-1 发布,POSIX兼容环境 https://www.linuxidc.com/Linux/2019-02/156957.htm

Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址https://www.linuxidc.com/Linux/2019-02/156968.htm

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,053评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,527评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,779评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,685评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,699评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,609评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,989评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,654评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,890评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,634评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,716评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,394评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,976评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,950评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,191评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,849评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,458评论 2 342

推荐阅读更多精彩内容