go 编译
2023年5月18日查看支持的平台列表
|
1 |
go tool dist list |
Mac 或 Linux 系统:设置编译环境变量
|
1 |
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 |
windows 设置编译环境变量
|
1 2 3 |
SET CGO_ENABLED=0 SET GOOS=linux SET GOARCH=amd64 |
编译
|
1 |
go build -o goblog |
链接编译,在mac平上
musl-cross 是一个轻量级的交叉编译工具链,它可以编译静态链接的二进制文件。
|
1 2 3 4 5 6 7 8 9 |
brew install FiloSottile/musl-cross/musl-cross //安装动态连接文件 ls /opt/homebrew/opt/musl-cross/bin //查看安装的动态链接文件 CC=x86_64-linux-musl-gcc GOOS=linux GOARCH=amd64 CGO_ENABLED=1 go build -o build/main //编译 需要在运行平台上安装动态gcc ldd ./main //查看缺少什么动态链接库 ./main: error while loading shared libraries: /lib/x86_64-linux-gnu/libc.so: invalid ELF header sudo apt-get install musl //安装动态链接库 |