ubuntu openjdk jmx编译异常,无法继续

发布于 2022-09-05 08:00:52 字数 2828 浏览 18 评论 0

1、手工编译openjdk,运行一半时出现以下异常。
2、环境:
系统:ubuntu 16.04 内核:4.10.0-28-generic
Bootstrap jdk: 在oracle 官网下载的 jdk1.7.0_80
编译的openjdk: openjdk-7u75-src-b13-18_dec_2014.zip

jdk1.7/classes @/home/wangjianan/jdkbuild/openjdk1.7/tmp/sun/com.sun.net.httpserver/.classes.list.filtered
make[5]: Leaving directory '/home/wangjianan/jdkbuild/openjdk/jdk/make/com/sun/net/httpserver'
make[5]: Entering directory '/home/wangjianan/jdkbuild/openjdk/jdk/make/com/sun/jmx'
INFO: ENABLE_FULL_DEBUG_SYMBOLS=1
INFO: /usr/bin/objcopy cmd found so will create .debuginfo files.
INFO: STRIP_POLICY=min_strip
INFO: ZIP_DEBUGINFO_FILES=1
/bin/mkdir -p /home/wangjianan/jdkbuild/openjdk1.7/classes/javax/management/remote/rmi
rm -f /home/wangjianan/jdkbuild/openjdk1.7/classes/javax/management/remote/rmi/RMIConnectionImpl_Stub.class
/home/wangjianan/jdkbuild/openjdk1.7/bin/java -XX:-PrintVMOptions -XX:+UnlockDiagnosticVMOptions -XX:-LogVMOutput -Xmx512m -Xms512m -XX:PermSize=32m -XX:MaxPermSize=160m -cp /home/wangjianan/jdkbuild/openjdk1.7/classes sun.rmi.rmic.Main -classpath "/home/wangjianan/jdkbuild/openjdk1.7/classes" \

            -d /home/wangjianan/jdkbuild/openjdk1.7/classes              \
            -v1.2                           \
            -keepgenerated                  \
            javax.management.remote.rmi.RMIConnectionImpl

Error: dl failure on line 863
Error: failed /home/wangjianan/jdkbuild/openjdk1.7/lib/amd64/server/libjvm.so, because /home/wangjianan/jdkbuild/openjdk1.7/lib/amd64/server/libjvm.so: undefined symbol: _ZN23G1SATBCardTableModRefBS24write_ref_array_pre_workIP7oopDescEEvPT_i
Makefile:123: recipe for target '/home/wangjianan/jdkbuild/openjdk1.7/classes/javax/management/remote/rmi/RMIConnectionImpl_Stub.class' failed
make[5]: * [/home/wangjianan/jdkbuild/openjdk1.7/classes/javax/management/remote/rmi/RMIConnectionImpl_Stub.class] Error 6
make[5]: Leaving directory '/home/wangjianan/jdkbuild/openjdk/jdk/make/com/sun/jmx'
Makefile:56: recipe for target 'all' failed
make[4]: * [all] Error 1
make[4]: Leaving directory '/home/wangjianan/jdkbuild/openjdk/jdk/make/com/sun'
Makefile:43: recipe for target 'all' failed
make[3]: * [all] Error 1
make[3]: Leaving directory '/home/wangjianan/jdkbuild/openjdk/jdk/make/com'
Makefile:253: recipe for target 'all' failed
make[2]: * [all] Error 1
make[2]: Leaving directory '/home/wangjianan/jdkbuild/openjdk/jdk/make'
make/jdk-rules.gmk:88: recipe for target 'jdk-build' failed
make[1]: * [jdk-build] Error 2
make[1]: Leaving directory '/home/wangjianan/jdkbuild/openjdk'
Makefile:251: recipe for target 'build_product_image' failed
make: * [build_product_image] Error 2

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

好久不见√ 2022-09-12 08:00:52

因为有两个文件没有编译导致,导致在后续rm命令时候无法找到文件。

cd /Users/Sean/Software/OpenJDK/build/classes/javax/management/remote/rmi/
javac RMIServerImpl_Stub.java
javac RMIConnectionImpl_Stub.java

更多问题可以看我的博客如何优雅的编译OpenJDK(Mac 版)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文