Menu

01.1. 安装 Go

Go 的三种安装方式

Go 有多种安装方式,你可以选择自己喜欢的。这里我们介绍三种最常见的安装方式:

  • Go 源码安装:这是一种标准的软件安装方式。对于经常使用 Unix 类系统的用户,尤其对于开发者来说,从源码安装可以自己定制。
  • Go 标准包安装:Go 提供了方便的安装包,支持 Windows、Linux、Mac 等系统。这种方式适合快速安装,可根据自己的系统位数下载好相应的安装包,一路 next 就可以轻松安装了。推荐这种方式
  • 第三方工具安装:目前有很多方便的第三方软件包工具,例如 Ubuntu 的 apt-get 和 wget、Mac 的 homebrew 等。这种安装方式适合那些熟悉相应系统的用户。

最后,如果你想在同一个系统中安装多个版本的 Go,你可以参考第三方工具 GVM,这是目前在这方面做得最好的工具,除非你知道怎么处理。

Go 源码安装

Go 1.5 彻底移除 C 代码,Runtime、Compiler、Linker 均由 Go 编写, 实现自举。只需要安装了上一个版本, 即可从源码安装。

在 Go 1.5 前, Go 的源代码中,有些部分是用 Plan 9 C 和 AT&T 汇编写的,因此假如你要想从源码安装,就必须安装 C 的编译工具。

在 Mac 系统中,只要你安装了 Xcode,就已经包含了相应的编译工具。

在类 Unix 系统中,需要安装 gcc 等工具。例如 Ubuntu 系统可通过在终端中执行sudo apt-get install gcc libc6-dev来安装编译工具。

在 Windows 系统中,你需要安装 MinGW,然后通过 MinGW 安装 gcc,并设置相应的环境变量。

你可以直接去官网下载源码,找相应的goVERSION.src.tar.gz的文件下载,下载之后解压缩到$HOME目录,执行如下代码:

cd go/src
./all.bash

运行 all.bash 后出现 "ALL TESTS PASSED" 字样时才算安装成功。

上面是 Unix 风格的命令,Windows 下的安装方式类似,只不过是运行all.bat,调用的编译器是 MinGW 的 gcc。

如果是 Mac 或者 Unix 用户需要设置几个环境变量,如果想重启之后也能生效的话把下面的命令写到.bashrc或者.zshrc里面,

export GOPATH=$HOME/gopath
export PATH=$PATH:$HOME/go/bin:$GOPATH/bin

如果你是写入文件的,记得执行bash .bashrc或者bash .zshrc使得设置立马生效。

如果是 window 系统,就需要设置环境变量,在 path 里面增加相应的 go 所在的目录,设置 gopath 变量。

当你设置完毕之后在命令行里面输入go,看到如下图片即说明你已经安装成功

file

图 1.1 源码安装之后执行 Go 命令的图

如果出现 Go 的 Usage 信息,那么说明 Go 已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的 PATH 环境变中是否包含了 Go 的安装目录。

从 go 1.8 开始,GOPATH 环境变量现在有一个默认值,如果它没有被设置。 它在 Unix 上默认为 $HOME/go, 在 Windows 上默认为 %USERPROFILE%/go。

关于上面的 GOPATH 将在下面小节详细讲解

Go 标准包安装

Go 提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go (Windows 系统:c:\Go),当然你可以改变他们的安装位置,但是改变之后你必须在你的环境变量中设置如下信息:

export GOROOT=$HOME/go
export GOPATH=$HOME/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

上面这些命令对于 Mac 和 Unix 用户来说最好是写入.bashrc或者.zshrc文件,对于 windows 用户来说当然是写入环境变量。

如何判断自己的操作系统是 32 位还是 64 位?

我们接下来的 Go 安装需要判断操作系统的位数,所以这小节我们先确定自己的系统类型。

Windows 系统用户请按 Win+R 运行 cmd,输入systeminfo后回车,稍等片刻,会出现一些系统信息。在 "系统类型" 一行中,若显示 "x64-based PC",即为 64 位系统;若显示 "X86-based PC",则为 32 位系统。

Mac 系统用户建议直接使用 64 位的,因为 Go 所支持的 Mac OS X 版本已经不支持纯 32 位处理器了。

Linux 系统用户可通过在 Terminal 中执行命令arch(即uname -m) 来查看系统信息:

64 位系统显示

x86_64

32 位系统显示

i386

Mac 安装

访问下载地址,32 位系统下载 go1.4.2.darwin-386-osx10.8.pkg(更新的版本已无 32 位下载),64 位系统下载 go1.8.3.darwin-amd64.pkg,双击下载文件,一路默认安装点击下一步,这个时候 go 已经安装到你的系统中,默认已经在 PATH 中增加了相应的~/go/bin, 这个时候打开终端,输入go

看到类似上面源码安装成功的图片说明已经安装成功

如果出现 go 的 Usage 信息,那么说明 go 已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的 PATH 环境变中是否包含了 go 的安装目录。

Linux 安装

访问下载地址,32 位系统下载 go1.8.3.linux-386.tar.gz,64 位系统下载 go1.8.3.linux-amd64.tar.gz,

假定你想要安装 Go 的目录为 $GO_INSTALL_DIR,后面替换为相应的目录路径。

解压缩tar.gz包到安装目录下:tar zxvf go1.8.3.linux-amd64.tar.gz -C $GO_INSTALL_DIR

设置 PATH,export PATH=$PATH:$GO_INSTALL_DIR/go/bin

然后执行go

file

图 1.2 Linux 系统下安装成功之后执行 go 显示的信息

如果出现 go 的 Usage 信息,那么说明 go 已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的 PATH 环境变中是否包含了 go 的安装目录。

Windows 安装

访问 Golang 下载页,32 位请选择名称中包含 windows-386 的 msi 安装包,64 位请选择名称中包含 windows-amd64 的。下载好后运行,不要修改默认安装目录 C:\Go\,若安装到其他位置会导致不能执行自己所编写的 Go 代码。安装完成后默认会在环境变量 Path 后添加 Go 安装目录下的 bin 目录 C:\Go\bin\,并添加环境变量 GOROOT,值为 Go 安装根目录 C:\Go\ 。

验证是否安装成功

在运行中输入 cmd 打开命令行工具,在提示符下输入 go,检查是否能看到 Usage 信息。输入 cd %GOROOT%,看是否能进入 Go 安装目录。若都成功,说明安装成功。

不能的话请检查上述环境变量 Path 和 GOROOT 的值。若不存在请卸载后重新安装,存在请重启计算机后重试以上步骤。

第三方工具安装

GVM

gvm 是第三方开发的 Go 多版本管理工具,类似 ruby 里面的 rvm 工具。使用起来相当的方便,安装 gvm 使用如下命令:

bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)

安装完成后我们就可以安装 go 了:

gvm install go1.8.3
gvm use go1.8.3

也可以使用下面的命令,省去每次调用 gvm use 的麻烦: gvm use go1.8.3 --default

执行完上面的命令之后 GOPATH、GOROOT 等环境变量会自动设置好,这样就可以直接使用了。

apt-get

Ubuntu 是目前使用最多的 Linux 桌面系统,使用apt-get命令来管理软件包,我们可以通过下面的命令来安装 Go,为了以后方便,应该把 git mercurial 也安装上:

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:gophers/go
sudo apt-get update
sudo apt-get install golang-stable git-core mercurial

wget

wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
sudo tar -xzf go1.8.3.linux-amd64.tar.gz -C /usr/local

配置环境变量:

export GOROOT=/usr/local/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
export GOPATH=$HOME/gopath (可选设置)

或者使用:

sudo vim /etc/profile

并添加下面的内容:

export GOROOT=/usr/local/go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
export GOPATH=$HOME/gopath (可选设置)

重新加载 profile 文件

source /etc/profile

homebrew

homebrew 是 Mac 系统下面目前使用最多的管理软件的工具,目前已支持 Go,可以通过命令直接安装 Go,为了以后方便,应该把 git mercurial 也安装上:

1. 安装 homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2. 安装 go

brew update && brew upgrade
brew install go
brew install git
brew install mercurial //可选安装

本文章首发在 GolangCaff
上一篇 下一篇