我目前正在使用 Mac OS X,现在我需要构建一个 .exe 文件,以便 Go 程序可以在 Windows 上运行。那么问题来了,如何在 MacOS amd64 下为 Win X86 构建可执行文件?还是不可能这样做?
问问题
13932 次
2 回答
31
如果您不使用 CGo 而是使用纯 Go,那么它是完全可行和标准的。
首先,您必须在开发计算机上为目标创建 Go 环境。假设你的 Go 安装在~/var/go
,这可能是这样的:
cd ~/var/go/src
CGO_ENABLED=0 GOOS=windows GOARCH=386 ./make.bash
然后你用好的 GOOS 和 GOARCH 编译:
GOOS=windows GOARCH=386 go build -o hello.exe hello.go
于 2012-12-20T07:53:34.083 回答
8
我已经使用Dave Cheney 的教程和随附的 shell 脚本在 linux 上为 linux、windows 和 OS X 构建二进制文件就好了。(由我的压力磁盘项目使用)
它与 dystroy 描述的方法完全相同,只是带有分步说明和一些有用的 shell 别名。
2021 年 2 月更新
如果你想在你的 CI 中插入一些东西,那么我推荐goreleaser - 它可以自动交叉编译各种操作系统并构建包。如果您想查看示例,请查看完全使用 goreleaser 构建的压力磁盘发布页面- 请参阅配置和说明
于 2012-12-20T10:15:34.837 回答