rai*_*cho 5 java java-11 openjdk-11
我想为 M1 MacBook 编译 OpenJDK 11。
首先,我尝试使用 Zulu JDK,但我没有找到编译它的方法。
然后,我尝试在 M1 上尝试编译 OpenJDK,但是当我运行sh configure.
错误是:
配置:目标中测试的位数 (64) 不同于预期在目标中找到的位数 (32) 配置:错误:无法继续。
那么,我该如何编译它呢?
我想在 M1 MacBook 中编译 jdk。
不要尝试编译 OpenJDK。代码库庞大而复杂。并且没有必要,因为其他人提供了构建和安装程序。
对于使用 Apple Silicon 而不是 Intel 的 Mac,截至 2021 年 8 月,我建议为macOS?/?AArch64使用Java 17 的早期访问版本。正式版本将于 9 月发布,并且可能是LTS。
或者,使用由不同供应商提供的 Java 早期版本的构建。例如,Azul Systems宣布了 2020-11计划为基于Apple Silicon、基于 ARM的 Mac 发布OpenJDK 8、11、13和 15 版本。
我们很少有人编译过庞大而复杂的 OpenJDK 代码库。相反,我们会寻找提供构建和安装程序的几家供应商中的任何一家。
目前,我建议您使用Java 17的早期访问版本在 Apple Silicon Mac 上本地运行。选择macOS?/?AArch64项目。请报告您遇到的任何问题。
稍后,当 Java 17 于 2021-09 年正式发布时,我希望您可以选择来自多个供应商中的任何一个的构建/安装程序,例如 SAP、Red Hat/IBM、BellSoft、Azul Systems、Oracle、Adoptium/AdoptOpenJDK、Microsoft、亚马逊、Pivotal 等。这些构建/安装程序将主要或完全基于 OpenJDK 代码库。
仅供参考,Java 17 预计将成为下一个长期支持 (LTS)版本,支持多年。
我自己在我的 M1 MacBook Pro 上使用早期访问 Java 17,在 Big Sur 上使用 IntelliJ 2021.x 和 Maven。运行良好,没有问题。
正如所评论的,您的特定错误可能是由于您编译 32 位 ARM 而不是 Apple 在其 M1 芯片中使用的 64 位 ARM。
如果您坚持尝试编译 OpenJDK,我建议您检查 Adoptium/AdoptOpenJDK 上的开源工具。在 OpenJDK 站点上构建早期访问版本的工具也可能是开源的,但我不确定。