openjdk7的编译
来源:互联网 发布:网络摄像头容量计算 编辑:程序博客网 时间:2024/06/01 22:19
第一步安装依赖
执行如下shell
# 因为我已经装了ant和jdk(注意这个jdk,所以不再安装)sudo apt-get install buildessential gawk m4 libasound2-dev libcups2-dev libxrender-dev xorg-dev xorg-dev xutils-dev x11proto-print-dev binutils libmotif3 libmotif-dev
第二步下载安装bootstrap jdk
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html?ssSourceSiteId=otncn
编译openjdk7所用的bootstrap jdk不能是高版本的,必须要用jdk6(血泪史阿,切记)。
我把它安装在/home/jasper/software/apache/jdk1.6.0_45
第三步下载openjdk7源码
下载地址:http://jdk7.java.net/source.html
下载下来的是一个zip文件,解压即可。
我把它解压到/home/jasper/software/apache/openjdk_7u40
第四步修改CurrencyData.properties的日期
打开文件/home/jasper/software/apache/openjdk_7u40/openjdk/jdk/src/share/classes/java/util/CurrencyData.properties
修改此文件里的所有日期。比如相应的+n年,以保证所有的日期都在最近10年内
第五步设置编译需要的环境变量
执行如下shell
cd /home/jasper/software/apache/openjdk_7u40/openjdk# Bootstrap JDK的安装路径。必填export ALT_BOOTDIR=/home/jasper/software/apache/jdk1.6.0_45# 允许自动下载依赖export ALLOW_DOWNLOADS=true# 并行编译的线程数,设置为和CPU内核数量一致即可export HOTSPOT_BUILD_JOBS=6export ALT_PARALLEL_COMPILE_JOBS=6# 比较本次build出来的映像与先前版本的差异。export SKIP_COMPARE_IMAGES=true# 使用预编译头文件,不加这个编译会更慢一些export USE_PRECOMPILED_HEADER=true# 要编译的内容export BUILD_LANGTOOLS=trueexport BUILD_HOTSPOT=trueexport BUILD_JDK=true# 把它设置为false可以避免javaws和浏览器java插件之类的部分的buildBUILD_DEPLOY=false# 把它设置为false就不会build出安装包。因为安装包里有一些奇怪的依赖# 但即使不build出它也已经能得到完整的JDK映像,所以还是别build它好了BUILD_INSTALL=false# 编译结果存放的路径export ALT_OUTPUTDIR=/home/jasper/software/apache/openjdk_7u40/build# 这两个环境变量必须去掉,不然会有很诡异的事情发生unset JAVA_HOMEunset CLASSPATH# 输出日志?make 2>&1 | tee $ALT_OUTPUTDIR/build.log# 编译设置检查# make sanity
注意查看最后是否有报错,如报错请安装相应的依赖
PS:请把上文所说的所有shell在一个终端里执行。
遇到的一些问题:
1、/test_gamma中无法找到gamma
修改文件/home/jasper/software/apache/openjdk_7u40/openjdk/hotspot/make/linux/Makefile
把所有含有gamma的行注释掉(即在行首加#)
2、cc1plus: error: the “stabs” debug format cannot be used with
编译指令换成:
make DEBUG_BINARIES=true all
- openjdk7的编译
- Windows下编译OpenJDK7
- Ubuntu 下编译 openJDK7
- fedora15 编译openjdk7
- CentOS6.5编译openjdk7
- ubuntu10.04编译openjdk7
- Ubuntu12编译openjdk7
- ubuntu下编译openjdk7
- Mac编译OpenJDK7
- Linux下编译OpenJDK7
- Centos7 下编译openjdk7
- 自己动手编译openjdk7
- ubuntu14 编译 openjdk7
- ubuntu14.04编译openjdk7
- Centos6.5编译openjdk7
- Ubuntu16.04 编译 OpenJDK7
- 【JDK编译】Centos7编译OpenJDK7
- Ubuntu11.10下编译 OpenJDK7
- (OK) Fedora 23——CORE——docker——(3)——> install-docker
- 利用smtp协议发送带附件的邮件
- backgroundColor的背景颜色alpha透明度设置
- (OK) Fedora 23——CORE——docker——(4)——> iptables_core.sh
- Android项目 植物大战僵尸
- openjdk7的编译
- Tensorflow 分布式部署简介
- 从头认识多线程-2.14 由同步的synchronized (newobject()) 引起的异步现象和脏读
- (OK) Fedora 23——CORE——docker——(5)——> install-core
- 不同单词个数
- 数字排序问题(c++)
- details标签
- 小白说编译原理-7-算术表达式编译树(支撑类)
- 哈理工OJ 1562 字符统计器(水模拟)