编译oracle jdk源码,OpenJDK8源码编译(Ubuntu 16.04)

一、下载

下载步骤参考的官网,内容如下:

Source code

The jdk8u-dev forest for ongoing development can be cloned using this command: hg clone http://hg.openjdk.java.net/jdk8u/jdk8u-dev;cd jdk8u-dev;sh get_source.sh .

The corresponding master forest jdk8u can be cloned using this command: hg clone http://hg.openjdk.java.net/jdk8u/jdk8u;cd jdk8u;sh get_source.sh .

In addition, the source code for the last release, 8u172, is available by cloning the 8u master forest : http://hg.openjdk.java.net/jdk8u/jdk8u and using the 'jdk8u172-b11' mercurial tag.

这里使用了一个类似于git的版本控制工具Mercurial,Ubuntu安装只需要使用如下命令:

sudo apt-get install Mercurial

安装完毕后,选择一个目录在终端内输入以下命令:

hg clone http://hg.openjdk.java.net/jdk8u/jdk8u

该命令会把主目录clone下来,然后进入文件夹,输入:

sh get_source.sh

然后等待下载完毕,网络上很多人说这里下载很慢,但是笔者感觉还行,最多十几分钟的样子。

完成的文件夹如下所示(关注打钩的文件夹即可):

4470a0f1c64205bf1ff1d927bd516e3d.png

二、编译

编译之前需要配置一个称作BOOT_JDK的东西,其版本要比编译的版本低一级,即编译OpenJDK8,就需要安装JDK7作为环境(OpenJDK7或OracleJDK7均可),这里略去JDK7的安装。

JDK7安装完成后,在OpenJDK8源码根目录下执行命令:

#--with-boot-jdk后就是你的JDK7安装目录

sudo bash configure --with-boot-jdk=/home/iceberg/1Program/jdk1.7.0_80

中间会遇到各种库缺失的问题,不过在最后几行都会有提示你执行什么命令来安装的,照做即可

PS:这里有一个坑,有个提示是这样的

configure: error: Could not find all X11 headers

sudo apt-get install libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev

注意这里的x应该是小写的!

然后等待配置完成就行了

cdc271cfe556f64a0202c220c70671f3.png

配置完成后再输入命令:

sudo make

就完事儿了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值