编译

[[toc]]

常规编译

  1. go build .

静态编译

常规编译后的包还需要依赖部署环境的支持,静态编译出的文件可以任意放到指定平台下运行,而不需要运行环境配置。

  1. go build --ldflags "-extldflags -static" -o main .

交叉编译

编译有平台区分,需要根据部署情况,选择匹配的编译方式。

  1. // 编译 Linux 环境
  2. CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build .
  3. // 编译 Windows 环境
  4. CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build .
  5. // 编译 Mac 环境
  6. CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build .