摘自极客时间孔令飞《Go语言项目开发实战》
获取安装包
$ wget https://marmotedu-1254073058.cos.ap-beijing.myqcloud.com/tools/go1.16.2.linux-amd64.tar.gz -O /tmp/go1.16.2.linux-amd64.tar.gz
解压安装
$ mkdir -p $HOME/go
$ tar -xvzf /tmp/go1.16.2.linux-amd64.tar.gz -C $HOME/go
# 版本
$ mv $HOME/go/go $HOME/go/go1.16.2
环境变量设置
tee -a $HOME/.bashrc <<'EOF'
# Go envs
export GOVERSION=go1.16.2 # Go 版本设置
export GO_INSTALL_DIR=$HOME/go # Go 安装目录
export GOROOT=$GO_INSTALL_DIR/$GOVERSION # GOROOT 设置
export GOPATH=$WORKSPACE/golang # GOPATH 设置
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH # 将 Go 语言自带的和通过 go install 安装的二进制文件加入到 PATH 路径中
export GO111MODULE="on" # 开启 Go moudles 特性
export GOPROXY=https://goproxy.cn,direct # 安装 Go 模块时,代理服务器设置
export GOPRIVATE=github.com # 指定不走代理的 Go 包域名
export GOSUMDB=off # 关闭校验 Go 依赖包的哈希值
EOF
这些环境变量的含义如下:
因为 Go 以后会用 Go modules 来管理依赖,所以我建议你将 GO111MODULE 设置为 on。在使用模块的时候,$GOPATH 是无意义的,不过它还是会把下载的依赖储存在 $GOPATH/pkg/mod 目录中,也会把 go install 的二进制文件存放在
G
O
P
A
T
H
/
b
i
n
目
录
中
。
另
外
,
我
们
还
要
将
GOPATH/bin 目录中。另外,我们还要将
GOPATH/bin目录中。另外,我们还要将GOPATH/bin、$GOROOT/bin 加入到 Linux 可执行文件搜索路径中。这样一来,我们就可以直接在 bash shell 中执行 go 自带的命令,以及通过 go install 安装的命令。
一些配套的go二进制功能,参考Linux环境项目开发(二)——Go IDE配置