准备 jdk7 环境
简述一下 jdk7的存在必要,是因为 jdk8 编译需要安装BootJDK
linux环境
openJdk 7 下载:https://download.java.net/openjdk/jdk7u75/ri/openjdk-7u75-b13-linux-x64-18_dec_2014.tar.gz
ps: jdk7 和jdk8源码下载有很多方式,只要下载下来的方法都可以。
mkdir /home/local
tar -xvf openjdk-7u75
mv openjdk-7u75 /home/local/java7
修改环境变量
vim /etc/profile
文件末尾追加如下:注意修改为自己JDK的路径
export JAVA_HOME=/home/local/java7
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
重新加载,生效环境变量
source /etc/profile
至此 jdk 7 安装成功
java -version
从输出可以看出 jdk 7 安装成功
jdk8编译
准备 open-jdk-8 源码
wget https://download.java.net/openjdk/jdk8u40/ri/openjdk-8u40-src-b25-10_feb_2015.zip
unzip openjdk-8u40.zip
安装依赖
sudo apt install \
libx11-dev \
libxext-dev \
libxrender-dev \
libxtst-dev \
libxt-dev \
libcups2-dev \
libfreetype6-dev \
libasound2-dev \
libfontconfig1-dev
apt-get install zip
apt-get install ccache # 如果没装ccache 需要补装
上述的依赖是 本机需要的依赖。
依赖检查
在源码根路径下执行如下命令,检查是否还缺少其他的依赖
bash ./configure
如果缺少其他依赖,可以直接 用命令补装即可
apt-get install [package]
依赖检查完成,如下图
Make 版本增加支持
执行编译
make all
如果不增加版本支持,会导致编译失败。
vim /hotspot/make/linux
编译
make all
成功如下