在开始安装前,请确保你的Ubuntu系统已完成系统更新(避免依赖冲突):
sudo apt update && sudo apt upgrade -y
适用于需要快速搭建基础环境的场景,但无法获取最新版本。
sudo apt install golang-go -y
go version
若输出类似go version go1.20.3 linux/amd64(版本号以实际为准),则说明安装成功。适用于需要最新功能或特定版本的场景。
.tar.gz格式文件(如go1.23.3.linux-amd64.tar.gz),或使用wget直接下载:wget https://golang.org/dl/go1.23.3.linux-amd64.tar.gz
/usr/local(Go的默认安装路径):sudo tar -C /usr/local -xzf go1.23.3.linux-amd64.tar.gz
~/.bashrc文件(或~/.zshrc,根据你的shell类型),添加以下内容:export GOROOT=/usr/local/go # Go的安装目录
export GOPATH=$HOME/go # 工作目录(存放代码、依赖)
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin # 将Go命令加入全局路径
保存文件后,运行以下命令使配置生效:source ~/.bashrc
go version
输出最新版本信息即为成功。适用于需要同时管理多个Go版本的场景(如开发测试不同版本)。
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
安装完成后,重新加载shell配置:source ~/.gvm/scripts/gvm
go1.23.3:gvm install go1.23.3
gvm use go1.23.3
go version
输出当前使用的Go版本即为成功。无论使用哪种安装方法,均需配置以下环境变量以确保Golang正常工作:
GOROOT:Go的安装目录(手动安装时为/usr/local/go,APT安装时为/usr/lib/go)。GOPATH:工作目录,用于存放Go代码、依赖包(默认$HOME/go)。PATH:包含Go的可执行文件路径($GOROOT/bin和$GOPATH/bin)。~/.bashrc(Bash用户)或~/.zshrc(Zsh用户),修改后对当前用户生效。/etc/profile或创建/etc/profile.d/go.sh。~/.bashrc末尾添加):export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
source ~/.bashrc
Go 1.11及以上版本引入了Go Modules,用于替代传统的GOPATH依赖管理,解决版本冲突问题。
go env -w GO111MODULE=on
go.mod文件(记录依赖信息):mkdir -p ~/myproject && cd ~/myproject
go mod init myproject # 替换为你的项目名称
go get <package>(如go get github.com/gin-gonic/gin),依赖会自动下载到$GOPATH/pkg/mod目录,并更新go.mod文件。~/myproject目录下创建hello.go,内容如下:package main
import "fmt"
func main() {
fmt.Println("Hello, Golang on Ubuntu!")
}
go run hello.go
若终端输出Hello, Golang on Ubuntu!,则说明环境搭建成功。go: command not found:PATH环境变量是否包含$GOROOT/bin,并确保source ~/.bashrc已执行。go env -w GOPROXY=https://goproxy.cn,direct
gvm use命令是否正确,或重新加载shell。按照以上步骤操作,你即可在Ubuntu系统上成功搭建Golang编译环境,并开始编写、编译和运行Go程序。