本网站可以通过分类标签帮助你快速筛选出你想看的文章,记住地址:www.Facec.cc

go编译可执行文件

查看linux cpu架构
uname -a

2023-01-31补充: 可以减少打包完后的体积
go build -ldflags "-s -w" main.go
-s 的作用是去掉符号信息。去掉符号表,golang panic 时 stack trace 就看不到文件名及出错行号信息了。
-w 的作用是去掉 DWARF tables 调试信息。结果就是得到的程序就不能用 gdb 调试了

mac上: GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o xxx main.go

编译arm架构上的linux版本

set GOARCH=arm64
set GOOS=linux
set CGO_ENABLED=0
go build

1、 MAC 下编译 Linux 、Windows

  • linux

CGO_ENABLED=0
GOOS=linux
GOARCH=amd64
go build -o name main.go

  • windows

CGO_ENABLED=0
GOOS=windows
GOARCH=amd64
go build -o name main.go

2、Linux 下编译 Mac、 Windows

  • Mac

CGO_ENABLED=0
GOOS=darwin
GOARCH=amd64
go build -o name main.go


  • Windows

CGO_ENABLED=0
GOOS=windows
GOARCH=amd64
go build -o name main.go

3、Windows 下编译 Mac 、Linux

  • Mac

SET CGO_ENABLED=0

SET GOOS=darwin

SET GOARCH=amd64

go build -o name main.go


  • Linux

SET CGO_ENABLED=0

SET GOOS=linux

SET GOARCH=amd64

go build -o name main.go

# golang  

评论