Golang官网地址(https://go.dev/) 国内地址(https://golang.google.cn/)
Google 官方提供了适用于不同操作系统(Windows、macOS、Linux等)、不同 CPU 类型(x86、x86-64、ARM64等)的软件开发工具包(也称为SDK)。此外,还提供了源码,以便开发者自行编译 SDK。
/usr/local/go
。在安装时,会将 /usr/local/go/bin
目录放在系统的 PATH
环境变量中。shellgo version
/usr/local/go
文件夹shellrm -rf /usr/local/go
提示
如果想要安装给所有用户,可以下载到 /usr/local/lib
中
/usr/local/lib
中的文件权限不受当前登录用户限制,可通过配置系统环境变量提供给其他用户账户使用。
若希望仅为当前用户配置,则可拷贝至 /home
中的某个目录中。有关环境变量的更多说明和配置将在后文中讲解。
shell# 可能需要使用 root 身份 或 sudo 运行
cd /usr/local
# 如果不能下载,可以使用国内地址
# https://golang.google.cn/dl/go1.19.1.linux-amd64.tar.gz
wget -c https://go.dev/dl/go1.19.1.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.19.1.linux-amd64.tar.gz
shelltar xzvf go1.19.1.linux-amd64.tar.gz
解压后,会在当前目录下生成 go
文件夹
go
目录即为解压后生成的目录,它是 Go SDK。
到此,go1.17.1.linux-amd64.tar.gz 文件不再有用,可以使用 rm 命令将其删除。
shellrm -f go1.19.1.linux-amd64.tar.gz
将命令文件所在完整路径追加到 PATH
值后,则无论身处哪个目录,都可以随时执行这个命令。此外,不同的应用程序可能会查找特定名称的环境变量,如即将配置的 GOPATH
。
无论我们使用 Windows、macOS 还是 Linux,系统都提供了两组环境变量,即系统环境变量和用户环境变量。系统环境变量影响所有系统中的用户,用户环境变量则只影响系统中的当前用户。
shell# 添加 go 目录到 PATH 环境变量
export PATH=$PATH:/usr/local/lib/go/bin
提示
添加之后,可能需要重新启动或重新应用命令行配置
不同的系统可能有不同的命令行配置文件,例如~/.bash_profile
~/.zshrc
shell# 应用命令行配置,具体文件名根据系统而定,centos7 目前是 .bash_profile
source ~/.bash_profile
Windows 同 mac,下载安装即可
经过以上步骤,就可以开始使用 go 了,这里介绍几个 go 的其他环境变量 以下几个环境变量初学时,不设置也是可以的。
shellgo env
GOPATH 用于指定我们的开发工作区,是存放源代码、测试文件、库静态文件、可执行文件的目录。
相关信息
在没有 go mod 的早期版本中,写的 go 项目必须放在这个目录下
自 Go 1.1 版本开始要求配置这个变量,对于 Linux 和 macOS,GOPATH 的默认值是 $home/go。而在 Windows 中 GOPATH 的默认值则为 %USERPROFILE%\go。通过配置 GOPATH,可以修改这个路径,但不能和 Go 安装目录相同。在 ~/.bash_profile 文件的最后添加如下一行
shell# 这里的目录 $HOME/golang ,可以根据自己喜好更改
export GOPATH=$HOME/golang
GOROOT 表示 Go 语言的安装目录。当系统中存在多个版本的 Go SDK 时,通过设置这个环境变量,可方便我们在不同的 Go SDK 版本之间切换。 添加 GOROOT 的方法是在 ~/.bash_profile 文件的最后添加如下一行:
shell# 这里根据情况填入目录地址
export GOROOT=xxxxxxx
修改 GOROOT 后,还要追加名为 PATH 环境变量的值,GOROOT/bin 包含 Go SDK 提供的工具链。继续在 ~/.bash_profile 中添加如下一行:
export PATH=$PATH:$GOROOT/bin
GOBIN 表示程序编译后二进制命令的安装目录,一般设置为 GOPATH/bin。方法为在 ~/.bash_profile 中添加如下一行:
export GOBIN=$GOPATH/bin
本文作者:Silon汐冷
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!