我正在编写的软件将在x86和x86-64架构上的Windows、Mac和Linux系统中广泛部署。每当我在Mac和Linux系统上设置go编译器时,我只能构建6g。在Windows上,我只使用预先构建的实验二进制文件,它使用8g。
当我开始设置构建服务器时,我假设我还需要构建8g,这样我也可以生成32位构建。我如何设置8g,特别是在Mac上(因为它们可以是x86或x64,取决于它们的年龄)?
发布于 2011-10-26 22:23:31
正如另一位发帖者所说,使用GOARCH
。他没有说的是你不需要多个目录。
运行两次all.bash
,相同的GOROOT
GOARCH=amd64 ./all.bash
GOARCH=386 ./all.bash
当您使用gomake
构建一些东西时,如果默认设置不适合您,请设置GOARCH
GOARCH=386 gomake
不幸的是,goinstall
还没有尊重GOARCH
。
请注意,gc编译器总是交叉编译的。一旦您有了所需架构的编译器,在$GOROOT/src/pkg
中设置GOOS
并构建包,那么您就应该能够针对任何操作系统或架构构建您的软件。
GOARCH=386 GOOS=windows gomake
发布于 2011-10-17 03:10:21
您必须将环境变量GOARCH
设置为386
,而不是由all.bash
构建脚本自动选择amd64
。有关详细信息,请参阅Go文档中的environment variables。
https://stackoverflow.com/questions/7786492
复制相似问题