温馨提示×

ubuntu下golang编译出错咋办

小樊
41
2026-09-28 13:15:00
栏目: 编程语言

在 Ubuntu 下用 Golang 编译出错,可以按下面思路一步步排查和解决:


一、先看清楚错误信息

先别急着改,认真看终端输出的报错,常见几类:

1️⃣ command not found: go

说明 Go 没装或环境变量没配好

go version

如果提示找不到命令:

sudo apt update
sudo apt install golang-go

或安装官方版本(推荐):

wget https://go.dev/dl/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

然后配置环境变量(~/.bashrc 或 ~/.zshrc):

export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
source ~/.bashrc

2️⃣ cannot find package “xxx”

说明 依赖没下载

go mod tidy

或

go get xxx

如果是老项目:

go mod init 项目名
go mod tidy

3️⃣ permission denied

常见于:

  • 写到系统目录
  • 使用 sudo go build

✅ 正确做法:

sudo chown -R $USER:$USER $GOPATH

不要用 sudo 编译 Go 项目


4️⃣ GOPROXY 无法访问(国内常见)

go env -w GOPROXY=https://goproxy.cn,direct

5️⃣ go: unsupported GOOS/GOARCH

一般是交叉编译写错:

GOOS=linux GOARCH=amd64 go build

6️⃣ 编译器版本太低

Ubuntu apt 的 go 很旧,建议用官方版本。


二、通用排错流程(推荐)

go clean -modcache
go mod tidy
go build

三、如果你愿意,我可以精准帮你

你可以直接把 完整的报错信息贴出来(复制终端内容),例如:

# command-line-arguments
./main.go:10:2: undefined: xxx

我可以一步一步告诉你怎么改 ✅

你现在是哪种错误?

0 踩