温馨提示×

Ubuntu Golang编译参数怎么设置

小樊
51
2025-09-14 18:34:42
栏目: 编程语言

在Ubuntu下设置Golang编译参数可通过环境变量或命令行参数实现,以下是常用方式:

  • 环境变量(影响当前终端会话,可添加到~/.bashrc永久生效):

    • GOOS/GOARCH:指定目标系统(如GOOS=linuxGOARCH=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查看官方文档。

0