温馨提示×

centos下如何编译golang程序

小樊
45
2026-10-14 14:55:15
栏目: 编程语言

在 CentOS 下编译 Golang 程序,通常分为安装 Go 环境和编译程序两部分。下面按常见场景给你说明。


一、安装 Go 环境(CentOS)

方法 1:官方二进制包(推荐)

# 以 Go 1.22 为例
wget https://go.dev/dl/go1.22.0.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.22.0.linux-amd64.tar.gz

# 配置环境变量
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc

# 验证
go version

方法 2:使用 yum(版本可能较旧)

sudo yum install -y golang
go version

二、编译 Golang 程序

1️⃣ 简单编译(当前平台)

cd your_project
go build main.go

生成可执行文件:

./main

2️⃣ 指定输出文件名

go build -o myapp main.go

3️⃣ 交叉编译(常见需求)

编译 Linux 64 位

GOOS=linux GOARCH=amd64 go build -o app main.go

编译 Windows 程序

GOOS=windows GOARCH=amd64 go build -o app.exe main.go

编译 ARM(如树莓派)

GOOS=linux GOARCH=arm GOARM=7 go build -o app main.go

4️⃣ 使用 Go Modules 的项目

cd your_project
go mod tidy
go build

5️⃣ 静态编译(无依赖,推荐服务器使用)

CGO_ENABLED=0 go build -ldflags "-s -w" -o app main.go

三、常见问题

❌ go: command not found

检查:

which go
echo $PATH

❌ 权限问题

chmod +x app
sudo ./app

❌ CentOS 缺少依赖(CGO)

sudo yum groupinstall "Development Tools"

如果你有具体项目结构或编译报错信息,可以贴出来,我可以帮你精确分析。

0 踩