Skip to content

Commit b2955f2

Browse files
cwlcwl
authored andcommitted
2 parents e196967 + 1341e64 commit b2955f2

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+3128
-1475
lines changed

.gitignore

Lines changed: 0 additions & 9 deletions
This file was deleted.

1.1.md

Lines changed: 139 additions & 134 deletions
Original file line numberDiff line numberDiff line change
@@ -1,134 +1,139 @@
1-
# 1.1 Go 安装
2-
3-
## Go的三种安装方式
4-
Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式:
5-
6-
- 从编译源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码安装是最方便而熟悉的。
7-
- 安装Go标准包:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合初学者,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了。
8-
- 用软件包管理工具:目前有很多方便的第三方软件包工具,例如Ubuntu的apt-get、Mac的homebrew等。这种安装方式适合那些熟悉相应系统的用户。
9-
10-
最后,如果你想在同一个系统中安装多个版本的Go,你可以参考第三方工具[GVM](https://github.com/moovweb/gvm),这是目前在这方面做得最好的工具,除非你知道怎么处理。
11-
12-
### Go源码安装
13-
在Go的源代码中,有些部分是用Plan 9 C和AT&T汇编写的,因此假如你要想从源码安装,就必须安装C的编译工具。
14-
15-
在Mac系统中,只要你安装了Xcode,就已经包含了相应的编译工具。
16-
17-
在类Unix系统中,需要安装gcc等工具。例如Ubuntu系统可通过在终端中执行`sudo apt-get install gcc libc6-dev`来安装编译工具。
18-
19-
在Windows系统中,你需要安装MinGW,然后通过MinGW安装gcc,并设置相应的环境变量。
20-
21-
Go使用[Mercurial][hg]进行版本管理,首先你必须安装了Mercurial,然后才能下载。假设你已经安装好Mercurial,执行如下代码:
22-
23-
假设已经位于Go的安装目录 `$GO_INSTALL_DIR`
24-
25-
hg clone -u release https://code.google.com/p/go
26-
cd go/src
27-
./all.bash
28-
29-
运行all.bash后出现"ALL TESTS PASSED"字样时才算安装成功。
30-
31-
上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的gcc。
32-
33-
然后设置几个环境变量,
34-
35-
export GOROOT=$HOME/go
36-
export GOBIN=$GOROOT/bin
37-
export PATH=$PATH:$GOBIN
38-
39-
看到如下图片即说明你已经安装成功
40-
41-
![](images/1.1.mac.png?raw=true)
42-
43-
如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了Go的安装目录。
44-
45-
46-
## Go标准包安装
47-
48-
### 如何判断自己的操作系统是32位还是64位?
49-
50-
我们接下来的Go安装需要判断操作系统的位数,所以这小节我们先确定自己的系统类型。
51-
52-
Windows系统用户请按Win+R运行cmd,输入`systeminfo`后回车,稍等片刻,会出现一些系统信息。在“系统类型”一行中,若显示“x64-based PC”,即为64位系统;若显示“X86-based PC”,则为32位系统。
53-
54-
Mac系统用户建议直接使用64位的,因为Go所支持的Mac OS X版本已经不支持纯32位处理器了。
55-
56-
Linux系统用户可通过在Terminal中执行命令`uname -a`来查看系统信息:
57-
58-
64位系统显示
59-
60-
<一段描述> x86_64 x86_64 x86_64 GNU/Linux
61-
//有些机器显示如下,例如ubuntu10.04
62-
x86_64 GNU/Linux
63-
64-
32位系统显示
65-
66-
<一段描述> i686 i686 i386 GNU/Linux
67-
68-
### Mac 安装
69-
70-
访问[下载地址][downlink],32位系统下载go1.0.3.darwin-386.pkg,64位系统下载go1.0.3.darwin-amd64.pkg,双击下载文件,一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的`~/go/bin`,这个时候打开终端,输入`go`
71-
72-
看到如下图片说明已经安装成功
73-
74-
![](images/1.1.mac.png?raw=true)
75-
76-
如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。
77-
78-
### Linux 安装
79-
80-
访问[下载地址][downlink],32位系统下载go1.0.3.linux-386.tar.gz,64位系统下载go1.0.3.linux-amd64.tar.gz,
81-
82-
假定你想要安装Go的目录为 `$GO_INSTALL_DIR`,后面替换为相应的目录路径。
83-
84-
解压缩`tar.gz`包到安装目录下:`tar zxvf go1.0.3.linux-amd64.tar.gz -C $GO_INSTALL_DIR`
85-
86-
设置PATH,`export PATH=$PATH:$GO_INSTALL_DIR/go/bin`
87-
88-
然后执行`go`
89-
90-
看到类似上面mac安装成功的图片说明已经安装成功
91-
92-
如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。
93-
94-
### Windows 安装
95-
96-
访问[下载地址][downlink],32位系统下载go1.0.3.windows-386.msi,64位系统下载go1.0.3.windows-amd64.msi。双击打开下载的文件,一路按照默认点击下一步,这个时候go已经安装到你的系统中,默认安装之后已经在你的系统环境变量中加入了`c:/go/bin`,这个时候打开cmd,输入`go`
97-
98-
看到类似上面mac安装成功的图片说明已经安装成功
99-
100-
如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了Go的安装目录。
101-
102-
## 第三方工具安装
103-
### GVM
104-
gvm是第三方开发的Go多版本管理工具,类似ruby里面的rvm工具。使用起来相当的方便,安装gvm使用如下命令:
105-
106-
bash < <(curl -s https://raw.github.com/moovweb/gvm/master/binscripts/gvm-installer)
107-
108-
安装完成后我们就可以安装go了:
109-
110-
gvm install go1.0.3
111-
gvm use go1.0.3
112-
113-
执行完上面的命令之后GOPATH、GOROOT等环境变量会自动设置好,这样就可以直接使用了。
114-
115-
### apt-get
116-
Ubuntu是目前使用最多的Linux桌面系统,使用`apt-get`命令来管理软件包,我们可以通过下面的命令来安装Go:
117-
118-
sudo add-apt-repository ppa:gophers/go
119-
sudo apt-get update
120-
sudo apt-get install golang-stable
121-
122-
### homebrew
123-
homebrew是Mac系统下面目前使用最多的管理软件的工具,目前已支持Go,可以通过命令直接安装Go:
124-
125-
brew install go
126-
127-
128-
## links
129-
* [目录](<preface.md>)
130-
* 上一节: [Go环境配置](<1.md>)
131-
* 下一节: [GOPATH 与工作空间](<1.2.md>)
132-
133-
[downlink]: http://code.google.com/p/go/downloads/list "Go安装包下载"
134-
[hg]: http://mercurial.selenic.com/downloads/ "Mercurial下载"
1+
# 1.1 Go 安装
2+
3+
## Go的三种安装方式
4+
Go有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式:
5+
6+
- 从编译源码安装:这是一种标准的软件安装方式。对于经常使用Unix类系统的用户,尤其对于开发者来说,从源码安装是最方便而熟悉的。
7+
- 安装Go标准包:Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这种方式适合初学者,可根据自己的系统位数下载好相应的安装包,一路next就可以轻松安装了。
8+
- 用软件包管理工具:目前有很多方便的第三方软件包工具,例如Ubuntu的apt-get、Mac的homebrew等。这种安装方式适合那些熟悉相应系统的用户。
9+
10+
最后,如果你想在同一个系统中安装多个版本的Go,你可以参考第三方工具[GVM](https://github.com/moovweb/gvm),这是目前在这方面做得最好的工具,除非你知道怎么处理。
11+
12+
### Go源码安装
13+
在Go的源代码中,有些部分是用Plan 9 C和AT&T汇编写的,因此假如你要想从源码安装,就必须安装C的编译工具。
14+
15+
在Mac系统中,只要你安装了Xcode,就已经包含了相应的编译工具。
16+
17+
在类Unix系统中,需要安装gcc等工具。例如Ubuntu系统可通过在终端中执行`sudo apt-get install gcc libc6-dev`来安装编译工具。
18+
19+
在Windows系统中,你需要安装MinGW,然后通过MinGW安装gcc,并设置相应的环境变量。
20+
21+
Go使用[Mercurial][hg]进行版本管理,首先你必须安装了Mercurial,然后才能下载。假设你已经安装好Mercurial,执行如下代码:
22+
23+
假设已经位于Go的安装目录 `$GO_INSTALL_DIR`
24+
25+
hg clone -u release https://code.google.com/p/go
26+
cd go/src
27+
./all.bash
28+
29+
运行all.bash后出现"ALL TESTS PASSED"字样时才算安装成功。
30+
31+
上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的gcc。
32+
33+
然后设置几个环境变量,
34+
35+
export GOROOT=$HOME/go
36+
export GOBIN=$GOROOT/bin
37+
export PATH=$PATH:$GOBIN
38+
39+
看到如下图片即说明你已经安装成功
40+
41+
![](images/1.1.mac.png?raw=true)
42+
43+
如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了Go的安装目录。
44+
45+
46+
## Go标准包安装
47+
48+
Go提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go (Windows系统:c:\Go),当然你可以改变他们的安装位置,但是改变之后你必须在你的环境变量中设置如下信息:
49+
50+
export GOROOT=$HOME/go
51+
export PATH=$PATH:$GOROOT/bin
52+
53+
### 如何判断自己的操作系统是32位还是64位?
54+
55+
我们接下来的Go安装需要判断操作系统的位数,所以这小节我们先确定自己的系统类型。
56+
57+
Windows系统用户请按Win+R运行cmd,输入`systeminfo`后回车,稍等片刻,会出现一些系统信息。在“系统类型”一行中,若显示“x64-based PC”,即为64位系统;若显示“X86-based PC”,则为32位系统。
58+
59+
Mac系统用户建议直接使用64位的,因为Go所支持的Mac OS X版本已经不支持纯32位处理器了。
60+
61+
Linux系统用户可通过在Terminal中执行命令`uname -a`来查看系统信息:
62+
63+
64位系统显示
64+
65+
<一段描述> x86_64 x86_64 x86_64 GNU/Linux
66+
//有些机器显示如下,例如ubuntu10.04
67+
x86_64 GNU/Linux
68+
69+
32位系统显示
70+
71+
<一段描述> i686 i686 i386 GNU/Linux
72+
73+
### Mac 安装
74+
75+
访问[下载地址][downlink],32位系统下载go1.0.3.darwin-386.pkg,64位系统下载go1.0.3.darwin-amd64.pkg,双击下载文件,一路默认安装点击下一步,这个时候go已经安装到你的系统中,默认已经在PATH中增加了相应的`~/go/bin`,这个时候打开终端,输入`go`
76+
77+
看到如下图片说明已经安装成功
78+
79+
![](images/1.1.mac.png?raw=true)
80+
81+
如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。
82+
83+
### Linux 安装
84+
85+
访问[下载地址][downlink],32位系统下载go1.0.3.linux-386.tar.gz,64位系统下载go1.0.3.linux-amd64.tar.gz,
86+
87+
假定你想要安装Go的目录为 `$GO_INSTALL_DIR`,后面替换为相应的目录路径。
88+
89+
解压缩`tar.gz`包到安装目录下:`tar zxvf go1.0.3.linux-amd64.tar.gz -C $GO_INSTALL_DIR`
90+
91+
设置PATH,`export PATH=$PATH:$GO_INSTALL_DIR/go/bin`
92+
93+
然后执行`go`
94+
95+
看到类似上面mac安装成功的图片说明已经安装成功
96+
97+
如果出现go的Usage信息,那么说明go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了go的安装目录。
98+
99+
### Windows 安装
100+
101+
访问[下载地址][downlink],32位系统下载go1.0.3.windows-386.msi,64位系统下载go1.0.3.windows-amd64.msi。双击打开下载的文件,一路按照默认点击下一步,这个时候go已经安装到你的系统中,默认安装之后已经在你的系统环境变量中加入了`c:/go/bin`,这个时候打开cmd,输入`go`
102+
103+
看到类似上面mac安装成功的图片说明已经安装成功
104+
105+
如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境变中是否包含了Go的安装目录。
106+
107+
## 第三方工具安装
108+
### GVM
109+
gvm是第三方开发的Go多版本管理工具,类似ruby里面的rvm工具。使用起来相当的方便,安装gvm使用如下命令:
110+
111+
bash < <(curl -s https://raw.github.com/moovweb/gvm/master/binscripts/gvm-installer)
112+
113+
安装完成后我们就可以安装go了:
114+
115+
gvm install go1.0.3
116+
gvm use go1.0.3
117+
118+
执行完上面的命令之后GOPATH、GOROOT等环境变量会自动设置好,这样就可以直接使用了。
119+
120+
### apt-get
121+
Ubuntu是目前使用最多的Linux桌面系统,使用`apt-get`命令来管理软件包,我们可以通过下面的命令来安装Go:
122+
123+
sudo add-apt-repository ppa:gophers/go
124+
sudo apt-get update
125+
sudo apt-get install golang-stable
126+
127+
### homebrew
128+
homebrew是Mac系统下面目前使用最多的管理软件的工具,目前已支持Go,可以通过命令直接安装Go:
129+
130+
brew install go
131+
132+
133+
## links
134+
* [目录](<preface.md>)
135+
* 上一节: [Go环境配置](<1.md>)
136+
* 下一节: [GOPATH 与工作空间](<1.2.md>)
137+
138+
[downlink]: http://code.google.com/p/go/downloads/list "Go安装包下载"
139+
[hg]: http://mercurial.selenic.com/downloads/ "Mercurial下载"

1.2.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ GOPATH允许多个目录,当有多个目录时,请注意分隔符,多个GO
7070

7171
cd $GOPATH/src
7272
mkdir mathapp
73+
cd mathapp
7374
vim main.go
7475

7576
// `$GOPATH/src/mathapp/main.go`源码:

1.3.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535

3636
## go clean
3737

38-
这个命令是用来移除当前源码包里面编译的文件的。这些文件包括
38+
这个命令是用来移除当前源码包里面编译生成的文件。这些文件包括
3939

4040
_obj/ 旧的object目录,由Makefiles遗留
4141
_test/ 旧的test目录,由Makefiles遗留
@@ -48,7 +48,7 @@
4848
DIR.test(.exe) 由go test -c产生
4949
MAINFILE(.exe) 由go build MAINFILE.go产生
5050

51-
我一般都是利用这个命令进行清除编译文件,然后github递交源码,在本机测试的时候这些编译文件都是和系统相关的,但是对于源码管理来说没必要
51+
我一般都是利用这个命令清除编译文件,然后github递交源码,在本机测试的时候这些编译文件都是和系统相关的,但是对于源码管理来说没必要
5252

5353
## go fmt
5454

0 commit comments

Comments
 (0)