四时宝库

程序员的知识宝库

centos Linux编译OpenJdk1.8(centos编译java)

记录在centos linux编译openjdk过程。

下载源码

在下载网址
http://hg.openjdk.java.net/jdk8u/jdk8u-dev/ 下载gz压缩包到本地。

cd /opt/source
wget http://hg.openjdk.java.net/jdk8u/jdk8u-dev/archive/jdk8u-dev.tar.gz
tar zxvf jdk8u-dev.tar.gz
cd jdk8u-dev

或者使用hg克隆到本地,然后下载源码

cd /opt/source
hg clone http://hg.openjdk.java.net/jdk8u/jdk8u-dev/
cd /opt/source/jdk8u-dev
#下载源码
sh get_source.sh

安装工具库

编译openjdk1.8时需要一个以安装的jdk环境,因为在编译过程中会使用ant打包java的库文件,所以需要安装jdk,但是在编译1.8时最好使用1.7及以前版本的jdk。

手册上一句话说明:

Building JDK 8 requires use of a version of JDK 7 that is at Update 7 or newer. 
JDK 8 developers should not use JDK 8 as the boot JDK, 
to ensure that JDK 8 dependencies are not introduced into the parts 
of the system that are built with JDK 7.
下载jdk1.7(官网或者openjdk都可以)
mkdir -p /opt/depends/jdk1.7.0_80
cd /opt/depends/jdk1.7.0_80
wget https://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz

安装依赖库

yum install libXtst-devel libXt-devel libXrender-devel cups-devel freetype-devel alsa-lib-devel

安装完成后可以进行下一步。

编译openJdk

  • 环境变量
export LANG=C
unset JAVA_HOME
export JAVA_HOME=/opt/depends/jdk1.7.0_80
export PATH=$PATH:$JAVA_HOME/bin
  • 生成Makefile

首先使用configure生成Makefile

cd /opt/source/jdk8u-dev
./configure --with-boot-jdk=/opt/depends/jdk1.7.0_80 --with-debug-level=fastdebug --with-target-bits=64 --with-num-cores=4
  • 然后使用make编译
#编译全部模块
make all 

#编译最终的jdk和jre及打包相关的jar库
make images

然后使用make all编译openjdk,最后在build文件下会有一个目录
linux-x86_64-normal-server-fastdebug,是存放编译结果的。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接