33## Go的三种安装方式
44Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式:
55
6- - Go源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码安装是最方便而熟悉的 。
7- - Go标准包安装:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合初学者 ,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了。
6+ - Go源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码安装可以自己定制 。
7+ - Go标准包安装:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合快速安装 ,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了。* 推荐这种方式 *
88- 第三方工具安装:目前有很多方便的第三方软件包工具,例如Ubuntu的apt-get、Mac的homebrew等。这种安装方式适合那些熟悉相应系统的用户。
99
1010最后,如果你想在同一个系统中安装多个版本的Go,你可以参考第三方工具[ GVM] ( https://github.com/moovweb/gvm ) ,这是目前在这方面做得最好的工具,除非你知道怎么处理。
@@ -18,39 +18,43 @@ Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三
1818
1919在Windows系统中,你需要安装MinGW,然后通过MinGW安装gcc,并设置相应的环境变量。
2020
21- Go使用 [ Mercurial ] [ hg ] 进行版本管理,首先你必须安装了Mercurial,然后才能下载。假设你已经安装好Mercurial ,执行如下代码:
21+ 你可以直接去官网 [ 下载源码 ] ( http://golang.org/dl/ ) ,找相应的 ` goVERSION.src.tar.gz ` 的文件下载,下载之后解压缩到 ` $HOME ` 目录 ,执行如下代码:
2222
23- 假设已经位于Go的安装目录 ` $GO_INSTALL_DIR ` 下
24-
25- hg clone -u release https://code.google.com/p/go
2623 cd go/src
2724 ./all.bash
2825
2926运行all.bash后出现"ALL TESTS PASSED"字样时才算安装成功。
3027
31- 上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的gcc。
28+ 上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行` all.bat ` ,调用的编译器是MinGW的gcc。
29+
30+ 如果是Mac或者Unix用户需要设置几个环境变量,如果想重启之后也能生效的话把下面的命令写到` .bashrc ` 或者` .zshrc ` 里面,
3231
33- 然后设置几个环境变量,
32+ export GOPATH=$HOME/gopath
33+ export PATH=$PATH:$HOME/go/bin:$GOPATH/bin
3434
35- export GOROOT=$HOME/go
36- export GOBIN=$GOROOT/bin
37- export PATH=$PATH:$GOBIN
35+ 如果你是写入文件的,记得执行` bash .bashrc ` 或者` bash .zshrc ` 使得设置立马生效。
3836
39- 看到如下图片即说明你已经安装成功
37+ 如果是window系统,就需要设置环境变量,在path里面增加相应的go所在的目录,设置gopath变量。
38+
39+ 当你设置完毕之后在命令行里面输入` go ` ,看到如下图片即说明你已经安装成功
4040
4141![ ] ( images/1.1.mac.png?raw=true )
4242
4343图1.1 源码安装之后执行Go命令的图
4444
4545如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了Go的安装目录。
4646
47+ > 关于上面的GOPATH将在下面小节详细讲解
4748
4849## Go标准包安装
4950
5051Go提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go (Windows系统:c:\Go),当然你可以改变他们的安装位置,但是改变之后你必须在你的环境变量中设置如下信息:
5152
5253 export GOROOT=$HOME/go
53- export PATH=$PATH:$GOROOT/bin
54+ export GOPATH=$HOME/gopath
55+ export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
56+
57+ 上面这些命令对于Mac和Unix用户来说最好是写入` .bashrc ` 或者` .zshrc ` 文件,对于windows用户来说当然是写入环境变量。
5458
5559### 如何判断自己的操作系统是32位还是64位?
5660
@@ -72,19 +76,19 @@ Linux系统用户可通过在Terminal中执行命令`arch`(即`uname -m`)来查
7276
7377### Mac 安装
7478
75- 访问[ 下载地址] [ downlink ] ,32位系统下载go1.0.3 .darwin-386. pkg,64位系统下载go1.0.3 .darwin-amd64.pkg,双击下载文件,一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的` ~/go/bin ` ,这个时候打开终端,输入` go `
79+ 访问[ 下载地址] [ downlink ] ,32位系统下载go1.4.2 .darwin-386-osx10.8. pkg,64位系统下载go1.4.2 .darwin-amd64-osx10.8 .pkg,双击下载文件,一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的` ~/go/bin ` ,这个时候打开终端,输入` go `
7680
7781看到类似上面源码安装成功的图片说明已经安装成功
7882
7983如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。
8084
8185### Linux 安装
8286
83- 访问[ 下载地址] [ downlink ] ,32位系统下载go1.0.3 .linux-386.tar.gz,64位系统下载go1.0.3 .linux-amd64.tar.gz,
87+ 访问[ 下载地址] [ downlink ] ,32位系统下载go1.4.2 .linux-386.tar.gz,64位系统下载go1.4.2 .linux-amd64.tar.gz,
8488
8589假定你想要安装Go的目录为 ` $GO_INSTALL_DIR ` ,后面替换为相应的目录路径。
8690
87- 解压缩` tar.gz ` 包到安装目录下:` tar zxvf go1.0.3 .linux-amd64.tar.gz -C $GO_INSTALL_DIR ` 。
91+ 解压缩` tar.gz ` 包到安装目录下:` tar zxvf go1.4.2 .linux-amd64.tar.gz -C $GO_INSTALL_DIR ` 。
8892
8993设置PATH,` export PATH=$PATH:$GO_INSTALL_DIR/go/bin `
9094
@@ -116,11 +120,11 @@ gvm是第三方开发的Go多版本管理工具,类似ruby里面的rvm工具
116120
117121安装完成后我们就可以安装go了:
118122
119- gvm install go1.1
120- gvm use go1.1
123+ gvm install go1.4.2
124+ gvm use go1.4.2
121125
122126也可以使用下面的命令,省去每次调用gvm use的麻烦:
123- gvm use go1.1 --default
127+ gvm use go1.4.2 --default
124128
125129执行完上面的命令之后GOPATH、GOROOT等环境变量会自动设置好,这样就可以直接使用了。
126130
@@ -146,5 +150,4 @@ homebrew是Mac系统下面目前使用最多的管理软件的工具,目前已
146150 * 上一节: [ Go环境配置] ( < 01.0.md > )
147151 * 下一节: [ GOPATH 与工作空间] ( < 01.2.md > )
148152
149- [ downlink ] : http://code.google.com/p/go/downloads/list " Go安装包下载 "
150- [ hg ] : http://mercurial.selenic.com/downloads/ " Mercurial下载 "
153+ [ downlink ] :http://golang.org/dl/ " Go安装包下载 "
0 commit comments