Ubuntu18.04编译OpenJdk8

本文详述了在Ubuntu18.04上从源码编译OpenJDK8的过程,包括环境配置、源码下载、编译过程以及解决make和gcc/g++版本兼容性问题的步骤。通过降低make到3.81,gcc/g++到4.8.5版本,避免因语法变更导致的编译错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在研究Java底层的运行逻辑,为了更好的透彻理解Java底层的C/C++的设计思想和原理,就编译了一把OpenJdk,结果遭遇了可种各样的坑,折腾了近两天时间才编译成功,中间搜索了Baidu和Google都没有找到系统的解决方案,现在及时把中间遇到的坑和大家分享出来同时也给自己留一个记录。

ps:make、gcc和g++的版本不宜过高,否则会由于语法的变更导致各种各样的兼容性的编译错误。由于Ubuntu18.04系统上make默认最新的版本是4.1,gcc/g++默认的版本是7.1,文章最后会附加修改make、gcc和g++版本的修改操作。

1、编译环境概述:

  1. 操作系统版本:Ubuntu18.04 x64;
  2. Linux内核版本:5.0.0-36(可以通过 uname -a 查看);
  3. OpenJdk版本:OpenJdk8;
  4. BootJdk版本:1.7.0_75;
  5. make版本:3.81;
  6. gcc版本:4.8.5;
  7. g++版本:4.8.5;

2、源码下载和配置:

         下载源码:大家可以直接去openjdk的官网下载,也可以使用 hg 命令直接克隆官方的源码文件到本地。

          openjdk的官网的下载地址:http://jdk.java.net/java-se-ri/8,大家可以自行下载,也可以直接使用下面的链接下载:

         

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值