1. 以 go1.12 为例

# 官方地址:https://golang.org/dl/

curl -O https://storage.googleapis.com/golang/go1.12.1.linux-amd64.tar.gz

> or

curl -O https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz

> 解压

tar zxf go1.12.1.linux-amd64.tar.gz -C /usr/local

2. 在 /etc/profile 文件末尾添加:

export GOROOT=/usr/local/go
export GOARCH=amd64
export GOOS=linux
export GOPATH=/home/golang
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

工作目录为 /home/golang (你可以创建一个你喜欢的目录)

3. 验证安装

执行 go env 即可

root@debian8:~# go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/golang"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build498998309=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"

4. 交叉编译

例如在 Mac 上编译 Linux 的程序,只需要编译前修改一下环境变量:

export GOOS=linux