“Golang 在 CentOS 上报错”这个问题范围比较广,通常不是 Go 语言本身的问题,而是环境或配置问题。下面我按常见报错类型 + 原因 + 解决方法给你梳理一下,你可以对照看看是哪一种。
go: command not found# 查看是否安装
which go
go version
如果没安装:
sudo yum install -y golang
# 或官方二进制
wget https://go.dev/dl/go1.22.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.22.linux-amd64.tar.gz
配置环境变量(~/.bashrc 或 ~/.profile):
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
source ~/.bashrc
cannot find package / missing go.sumgo mod initgo mod init projectname
go mod tidy
如果是内网环境:
go env -w GOPROXY=https://goproxy.cn,direct
GLIBC_2.xx not found⚠️ 这是 CentOS 最常见坑
ldd --version
如果是 CentOS 7:
推荐:
wget https://go.dev/dl/go1.19.linux-amd64.tar.gz
permission denied/usr/local/go 权限不足sudo chmod -R 755 /usr/local/go
不要 mixed 使用 sudo go
gcc: command not found
sudo yum install -y gcc
或禁用 CGO:
CGO_ENABLED=0 go build
sudo systemctl stop firewalld
sudo setenforce 0
如果你能贴出具体报错信息,我可以精确定位,例如:
CentOS 上 Go 报错,90% 是 PATH、GLIBC、或 gcc 的问题,不是 Go 语言本身的 bug。
你可以把报错贴出来,我直接帮你改。