在Ubuntu下设置Golang编译参数可通过环境变量或命令行参数实现,以下是常用方式:
环境变量(影响当前终端会话,可添加到~/.bashrc永久生效):
GOOS/GOARCH:指定目标系统(如GOOS=linux、GOARCH=amd64)。CGO_ENABLED:控制是否启用CGO(0为禁用,1为启用)。GOCACHE:设置编译缓存目录(如export GOCACHE=/tmp/go-cache)。命令行参数(直接传递给go build等命令):
-o:指定输出文件名(如-o app)。-ldflags:设置链接器参数,常用-s(去符号表)、-w(去调试信息)。-gcflags:设置编译器参数,如-l=4(激进内联优化)。-tags:指定编译标签(如-tags netgo用于静态编译)。-p:设置并行编译数量(如-p 4)。示例:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -o app main.go
export GOCACHE=/tmp/go-cache
go build -p 4 -o app main.go
更多参数可通过go help build查看官方文档。