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

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

阅读 3.2k
1 个回答
新手上路,请多包涵

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

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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题