【发布时间】:2020-03-02 22:11:01
【问题描述】:
我有这个 go builder 支持的平台列表:
"darwin/386",
"darwin/amd64",
"dragonfly/amd64",
"freebsd/386",
"freebsd/amd64",
"freebsd/arm",
"linux/386",
"linux/amd64",
"linux/arm",
"linux/arm64",
"linux/ppc64",
"linux/ppc64le",
"linux/mips",
"linux/mipsle",
"linux/mips64",
"linux/mips64le",
"linux/s390x",
"nacl/386",
"nacl/amd64p32",
"nacl/arm",
"netbsd/386",
"netbsd/amd64",
"netbsd/arm",
"openbsd/386",
"openbsd/amd64",
"openbsd/arm",
"plan9/386",
"plan9/amd64",
"plan9/arm",
"solaris/amd64",
"windows/386",
"windows/amd64",
我正在编写一个脚本来交叉编译我的项目。我首先将它们全部包含在内,但现在我在我的项目中添加了更多代码,但我无法为 Plan9 编译它。我查看了Plan9,发现它真的很旧,不再使用了。所以我的问题是,哪些平台被实际使用并且值得编译?
【问题讨论】:
-
只有你才能为你回答“什么值得”。
-
你需要为哪个编译。社区无法为您回答这个问题。
-
@Adrian:就是这样。我可以为每个平台构建它,但我问的是社区实际使用的是什么?有人在 Plan9 上托管服务器吗?我必须包括那个吗?我支持的大多数 Linux 发行版是什么?但我明白你的意思,这个问题可能没有“答案”。
-
“社区”没有同质的需求。为您的目标用户群需要的平台构建,而不是 StackOverflow 碰巧构建任意项目的平台。这个问题没有合理的社区答案。
-
“有人在 Plan9 上托管服务器吗?” -- 显然有人使用Plan 9,否则没有人会移植Go。 “我必须包括那个吗?” ——你不必做任何事情。 “我支持的大多数 Linux 发行版是什么?” -- Linux 发行版根本不适合这个问题。为一个发行版编译,它适用于所有其他发行版。
标签: go build operating-system cross-compiling cpu-architecture