使用命令: sudo sh configure --with-target-bits=64
用mac m1芯片编译openjdk一直报错:
configure: The tested number of bits in the target (64) differs from the number of bits expected to be found in the target (32)
configure: error: Cannot continue.
/Users/mac/Documents/jdkcompile/jdk-jdk-11-ga/build/.configure-support/generated-configure.sh: line 82: 5: Bad file descriptor
configure exiting with result code 1
原因很奇怪,大家都知道mac m1的系统是ARM64架构的,看了下generated-configure.sh脚本中对with-target-bits这样赋值的:
我们可以加行代码,输出看下VAR_CPU_BITS具体是多少,结果输出的是32,但是其实我们的系统本身是64位的,所以你把编译命令改为sudo sh configure --with-target-bits=32后面依然会报错的
{
echo "${VAR_CPU_BITS}: =============="
}
这时候只需要强制加把OPENJDK_TARGET_CPU_BITS的值改为64就可以解决了,记得加在
OPENJDK_TARGET_CPU_BITS="$VAR_CPU_BITS"后面一行,或者替换掉这行
OPENJDK_TARGET_CPU_BITS=64
然后再试下命令:sudo sh configure --with-target-bits=64
ok完美解决文章来源:https://www.toymoban.com/news/detail-836090.html
文章来源地址https://www.toymoban.com/news/detail-836090.html
到了这里,关于Mac M1芯片编译openjdk报错问题解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!