深入理解JVM原理之编译openjdk7


声明:本文转载自https://my.oschina.net/u/2486137/blog/1588865,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

        Java虚拟机种类很多例如:HotSpot 丶 JRockit 丶 J9等

我们一般用的就是HotSpot,如果我们电脑上装了JDK,可以运行java -version查看相关信息

java -version java version "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b14) Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

之前想着编译openjdk7,但是试过windows系统,linux系统,各种不如意,尤其是windows系统操作起来比linux更复杂,最后不得不放弃,centos试过,redhat也试过,各种不行 ,简直要吐血,

不过苍天不负有心人,经过一周的不断尝试,终于使用Ubuntu16.04.3搞定.

准备阶段:

①.需要安装的:使用 apt-get install 命令

 build-essential  gawk  libasound2-dev  libcups-dev  libxrender-dev xorg-dev  ant(1.7以上) libxtst-dev libxi-dev libxt-dev

②.openjdk7 , jdk6

我使用的jdk6为:jdk-6u45,

③.将CurrencyData.properties文件中的日期一定要改成10年内,

否则在编译过程中会报错从而导致编译失败:

Error: time is more than 10 years from present: 1136059200000

文件位置: 

/usr/openjdk/jdk/src/share/classes/java/util/CurrencyData.properties

开始编译:

①.进入openjdk目录下执行make sanity命令若出现如下提示表示检查通过:

sanity check passed.

②.

执行如下命令:

export LANG=C export ALT_BOOTDIR="/usr/local/jdk6" export ALT_JDK_IMPORT_PATH="/usr/local/jdk6" export BUILD_LANGTOOLS=true export BUILD_HOTSPOT=true export BUILD_JDK=true export SKIP_COMPARE_IMAGES=true export SKIP_DEBUG_BUILD=false  export SKIP_FASTDEBUG_BUILD=true  export DEBUG_NAME=debug export USE_PRECOMPILED_HEADER=true export ARCH_DATA_MODEL=64 export HOTSPOT_BUILD_JOB=4 export ALT_PARALLEL_COMPILE_JOBS=4 BUILD_DEPLOY=false BUILD_INSTALL=false export ALT_OUTPUTDIR=/usr/local/openjdk/build export ALLOW_DOWNLOADS=true unset JAVA_HOME unset CLASSPATH make DISABLE_HOTSPOT_OS_VERSION_CHECK=OK

如上命令建议放入到一个可执行文件中

③.静静的等待即可(时间有点漫长,大概三四十分钟左右,你可以选择喝杯咖啡,听首音乐放松一下)

④.可以看到编译开始及结束的时间,恭喜编译通过.

>>>Finished making images @ Tue Dec 12 22:16:37 CST 2017 ... make[2]: Leaving directory '/usr/local/openjdk/jdk/make' ######################################################################## ##### Leaving jdk for target(s) sanity all docs images             ##### ######################################################################## ##### Build time 00:34:22 jdk for target(s) sanity all docs images ##### ########################################################################  #-- Build times ---------- Target debug_build Start 2017-12-12 21:22:34 End   2017-12-12 22:16:37 00:04:43 corba 00:11:40 hotspot 00:00:49 jaxp 00:01:05 jaxws 00:34:22 jdk 00:01:23 langtools 00:54:03 TOTAL 

 

本文发表于2017年12月13日 10:33
(c)注:本文转载自https://my.oschina.net/u/2486137/blog/1588865,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 2019 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1