以下是Golang打包CentOS應用時常見問題的解決方法:
glibc版本不匹配
缺少依賴庫
libcurl
等系統庫。sudo yum install libcurl-devel
。循環導入錯誤
文件權限問題
chmod +x myapp
賦權。環境變量配置錯誤
go
命令無法識別,或依賴下載失敗。GOPATH
、GOROOT
是否正確配置并添加到PATH
,例如:echo "export GOROOT=/usr/local/go" >> ~/.bashrc
echo "export GOPATH=$HOME/go" >> ~/.bashrc
source ~/.bashrc
依賴管理問題
go mod tidy
清理依賴,或通過GOPROXY
設置國內鏡像源(如export GOPROXY=https://goproxy.cn
)。二進制文件體積過大
CGO_ENABLED=0
)減少依賴庫體積,或通過go mod vendor
將依賴打包到項目目錄。交叉編譯問題
GOOS=linux GOARCH=amd64 go build
。參考來源: