如何从linux交叉编译到darwin386?

我正在尝试使用以下方法从 linux 编译:

GOOS=darwin GOARCH=386 CGO_ENABLED=0 go build .

但它抛出错误:

cmd/go: unsupported GOOS/GOARCH pair darwin/386

我到处看,但似乎应该支持 darwin/386
(编译 windows/386 和 linux/386 工作正常)
(编译 darwin/amd64 工作正常)

(我什至在 Windows 上试过,但错误是一样的)

我错过了什么?

回答

从Go 1.15 发行说明:

正如 Go 1.14 发行说明中所宣布的那样,Go 1.15 不再支持 macOS、iOS、iPadOS、watchOS 和 tvOS(darwin/386 和 darwin/arm 端口)上的 32 位二进制文​​件。Go 继续支持 64 位 darwin/amd64 和 darwin/arm64 端口。

如果需要,您可以使用 Go 1.14 编译为 darwin/386。最新的 OSX 版本不再运行任何 32 位程序(来自 Catalina)。这就是他们放弃支持的原因:Go 1.14 发行说明宣布了这一点。


以上是如何从linux交叉编译到darwin386?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>