下载地址
- https:///dl/
- https://golang.google.cn/dl/
CentOS 环境
如果对版本没有特殊要求的话,建议直接 YUM 安装:
yum upgrade -y && yum update -y
yum install go -y
检查:
$ go version
go version go1.13.14 linux/amd64
# Golang 程序的安装路径
$ go env | grep ROOT
GOROOT="/usr/lib/golang"
# Golang 程序的工作目录路径
$ go env | grep PATH
GOPATH="/root/go"
MAC pro 环境
# 查看安装包仓库中 Golang 的版本
$ brew search go
# 选择安装一个比较新的版本
$ brew install go@1.14
# 修改配置文件,指定 Golang 的安装目录和工作目录。
$ vim ~/.zshrc
export GOROOT=/usr/local/Cellar/go\@1.14/1.14.13/libexec
export GOPATH=$HOME/go
export GOBIN=$HOME/go/bin
export PATH=$PATH:$GOBIN
Go proxy
为了快速下载 Golang 的第三方库,建议配置 Go proxy,详见:https://goproxy.io/zh/
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct
尝试安装第三方 Golang 包:
go get -u /x/lint/golint
ls $GOBIN | grep golint
GOPATH 环境变量
GOPATH 是一个环境变量,作为 Golang 的 WorkSpace(工作目录),表示 Golang 程序的运行环境。GOPATH 适合处理由大量 Golang 源码、多个包组合而成的复杂工程。从 Go 1.8 开始,在 UNIX-like 操作系统中 GOPATH 默认是 $HOME/go,当然也支持自定义。
GOPATH 和 Golang 的包管理是息息相关的,自 Go 1.11 开始,支持两种不同的包管理方式:
- 使用 GOPATH:
export GO111MODULE=off
- 使用 go mod:
export GO111MODULE=on
当 export GO111MODULE=off
时,在 GOPATH 下具有 3 个子目录:
- src:存放 Golang 项目(自己开发的项目、或下载的第三方项目)源码。
- bin:存放 Golang 项目编译出来的可执行文件。
- pkg:存放 Golang 项目编译过程中产生的中间缓存文件,例如:*.a 静态库文件。
当 export GO111MODULE=on
时,在 GOPATH 下具有 2 个子目录:
- bin:存放 Golang 项目编译出来的可执行文件。
- pkg:存放从网上下载的下载的第三方项目的源码。
注:go mod 方式下,自建项目的源码可以在任何位置,建议使用该方式。