跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

linux怎么安装Golang环境_linux配置go语言工作空间【实操】

官方不推荐用 apt 安装 Go,因版本滞后且默认不支持 go install;推荐直接下载官方二进制包解压至 /usr/local/go 并配置 PATH,再设置 GOPATH=$HOME/go、GOBIN=$HOME/go/bin 且确保其在 PATH 前置。 怎么用 apt 安装 Go(Ubuntu/Debian) 官方不推荐用系统包管理器装 Go,因为 Ubuntu/Debian 仓库里的
golang
包版本通常滞后 2–3 个大版本,且默认不带
go install
支持(Go 1.16+ 才启用模块化安装),容易在跑
go install github.com/xxx/yyy@latest
时失败。 如果你只是临时测试、写个脚本、或机器受限只能走 apt,可以装,但得知道代价: 执行
sudo apt update && sudo apt install golang
,装完
go version
可能显示
go1.18.1
(Ubuntu 22.04)或更老
GOPATH
默认设为
$HOME/go
,但
GO111MODULE=on
默认开启,所以老式
$GOPATH/src
工作流会失效 升级需等系统更新,不能单独升 Go 直接下载二进制包配环境变量(推荐) 这才是 Linux 上最可控、最常用的方式。Go 官方提供静态链接的
.tar.gz
,解压即用,无需编译,也不污染系统路径。 实操步骤: 立即学习 “ go语言免费学习笔记(深入) ”; 去 https://www.php.cn/link/81836b7cd16991abb7febfd7832927fd 找最新稳定版,比如
go1.22.5.linux-amd64.tar.gz
运行:
sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.22.5.linux-amd64.tar.gz
/usr/local/go/bin
加进
$PATH
:在
~/.bashrc
~/.zshrc
末尾加一行
export PATH=$PATH:/usr/local/go/bin
重载配置:
source ~/.bashrc
(或
source ~/.zshrc
),再运行
go version
验证 注意:
/usr/local/go
是约定俗成路径,别改成
/opt/go
$HOME/go
—— 否则某些 IDE(如 VS Code 的 Go 插件)可能识别不到 SDK。 GOBIN 和 GOPATH 怎么设才不踩坑 Go 1.16+ 默认启用模块(
GO111MODULE=on
),
GOPATH
不再是代码存放地,而是工具和缓存目录;
GOBIN
控制
go install
编译出的二进制放哪。 常见错误现象:
go install
成功但命令找不到,或者
go get
cannot find module providing package
。 建议配置:
export GOPATH=$HOME/go
(保持默认即可,不用改)
export GOBIN=$HOME/go/bin
(显式声明,避免依赖
$GOPATH/bin
的隐式逻辑) 确保
$GOBIN
$PATH
里,且位置比系统
/usr/bin
靠前(否则可能调到旧版
gofmt
等) 不要把项目代码放
$GOPATH/src
—— 新项目直接
mkdir myproj && cd myproj && go mod init myproj
验证工作空间是否真就绪 光有
go version
输出还不够。真实开发中容易卡在“环境看似正常,但
go run
go test
行为异常”的阶段。 快速验证项: 运行
go env GOPATH GOBIN GOROOT GO111MODULE
,确认值合理(
GOROOT
应为
/usr/local/go
GO111MODULE
应为
on
) 新建测试目录,
go mod init example.com/test
,再
echo 'package main; func main(){println("ok")}' > main.go
,然后
go run main.go
—— 能输出 ok 才算通路完整 试装一个命令行工具:
go install golang.org/x/tools/cmd/gopls@latest
,完成后检查
which gopls
是否指向
$GOBIN/gopls
最容易被忽略的是 shell 配置未生效(尤其用 zsh 却改了 bashrc)、或终端没重启导致
$PATH
没刷新 —— 这类问题占实际排查时间的 70% 以上。

相关文章