1.ubuntu kylin 14.04安装依赖

sudo apt-get install build-essential gawk m4 libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev x11proto-print-dev binutils libmotif3 libmotif-dev

2.下载编译软件

1)Bootstrop JDK: http://www.oracle.com/technetwork/java/javase/downloads/index.html -->Java SE 7u55

2)Ant: http://ant.apache.org/bindownload.cgi --> apache-ant-1.9.3-bin.zip

3)OpenJDK:https://jdk7.java.net/source.html --> openjdk-7u40-fcs-src-b43-26_aug_2013.zip

3.配置环境变量

vim /etc/profile

export JAVA_HOME=/opt/jdk1.7.0_55
export ANT_HOME=/opt/apache-ant-1.9.3
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  
PATH=$ANT_HOME/bin:$JAVA_HOME/bin:$PATH
export PATH CLASSPATH

source /etc/profile

4.准备编译脚本build.sh,并放在OpenJDK根目录下

#!/bin/bash
#设置语言
export LANG=C
export ALT_BOOTDIR=/opt/jdk1.7.0_55

#允许自动下载依赖包
export ALLOW_DOWNLOADS=true

#并行编译的线程数,设置为和CPU内核数量一直即可
export HOTSPOT_BUILD_JOBS=6
export ALT_PARALLEL_COMPILE_JOBS=6

#使用预编译头文件,不加这个编译会更慢
export USE_PRECOMPILED_HEADER=true

#要编译的内容
export BUILD_LANGTOOLS=true
export BUILD_JAXP=true
export BUILD_JAXWS=true
export BUILD_CORBA=true
export BUILD_HOSTPOT=true
export BUILD_JDK=true

#要编译的版本
export SKIP_DEBUG_BUILD=false
export SKIP_FASTDEBUG_BUILD=true
export DEBUG_NAME=debug

#把它设置为FALSE可以避免javaws和浏览器Java插件之类的部分build
BUILD_DEPLOY=false

#把它设置为false就不会build出安装包。因为安装包里有一些奇怪的依赖
#但即便不build出它也已经得到完整的JDK镜像,所以还是不用build它
BUILD_INSTALL=false

#存放编译结果
export ALT_OUTPUTDIR=/usr/cao/openjdk/build

unset CLASSPATH
unset JAVA_HOME
#make sanity && make
make 2>&1 | tee $ALT_OUTPUTDIR/build.log

5.修改build.sh执行权限并进行编译

chmod +x build.sh

./build.sh

最后编译结果如下,由于一开始未开启多线程编译,所以时间略长,仅供参考

#-- Build times ----------
Target debug_build
Start 2014-05-05 22:30:35
End   2014-05-05 22:44:20
00:01:02 corba
00:04:51 hotspot
00:00:13 jaxp
00:00:14 jaxws
00:07:00 jdk
00:00:23 langtools
00:13:45 TOTAL

参考资料:

《深入理解Java虚拟机》第二版第一章

http://blog.csdn.net/myproudcodelife/article/details/24844427

ubuntu kylin 14.04编译openjdk-7u40的更多相关文章

  1. Hadoop安装(Ubuntu Kylin 14.04)

    安装环境:ubuntu kylin 14.04   haoop-1.2.1   hadoop下载地址:http://apache.mesi.com.ar/hadoop/common/hadoop-1. ...

  2. 中国版 Ubuntu Kylin 14.04 LTS 麒麟操作系统中文版发布下载 (Ubuntu天朝定制版)

    中国版 Ubuntu Kylin 14.04 LTS 麒麟操作系统中文版发布下载 (Ubuntu天朝定制版) http://www.iplaysoft.com/ubuntukylin.html

  3. Ubuntu Kylin 14.04安装

    早听说Ubuntu Kylin对中国本地做了很多定制的工作,想搜狗输入法.WPS,还有中国日历等.昨天没事就下载了一个Kylin试用了下,使用的方法还是使用EasyBCD软件做了个硬盘安装启动,关于E ...

  4. ubuntu kylin 14.04安装配置redis-2.8.9(转)

    1.下载安装文件加压.编译和安装 cd /tmpwget http://download.redis.io/releases/redis-2.8.9.tar.gztar -zxf redis-2.8. ...

  5. ubuntu kylin 14.04安装Node.js和Famous

    默认使用软件中心安装node.js,然后参考https://famo.us/install进行安装 1.sudo apt-get install git 2.npm install -g yo gru ...

  6. ubuntu kylin 14.04安装搜狗输入法

    1.卸载原有的输入法,fcitx或ibus.如卸载fcitx: sudo apt-get remove fcitx*(如不需保留配置文件用purge) sudo apt-get autoremove( ...

  7. Ubuntu Kylin 14.04下配置JDK1.8

    1.源码包准备: 首先到官网下载jdk,http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h ...

  8. Ubuntu Kylin 14.04 安装配置 jdk、eclipse、tomcat 通用

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/qq1053781225/article/details/24810107 一.安装jdk       ...

  9. ubuntu kylin 14.04安装配置MongoDB v2.6.1(转)

    1.获取最新版本 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.1.tgz 2.解压并进入bin目录 tar zxvf mongo ...

随机推荐

  1. 常用HiveQL总结

    最近在用Hive做多维数据分析,总结一些常用HiveQL命令. 1. 建表 以纯文本数据建表: create table default.calendar_table ( day_cal date , ...

  2. 从SqlServer转手Oracle的一些坑

    为将SqlSugar ORM转制成OracleSugar ORM 本想一天搞定,凭着经验不看任何Oracle资料就直接强上了,但是从配置PLSQL和一些语法区别带来了很多坑让我进度放缓 这个贴子对于身 ...

  3. javabean和jsp动作元素

    model1就是利用了jsp和javabean 的组合来处理问题.jsp页面如果有太多的逻辑代码的话,维护起来和扩展起来是相当的麻烦的.所以jsp的逻辑代码部分都打包到一种java类当中进行编写.这种 ...

  4. [WCF编程]10.操作:请求/应答操作

    一.调用操作概述 WCF除了支持经典的服务端-客户端的请求/应答操作外,还提供了对其他操作类型的内建支持,包括:即发即弃的单向调用:允许服务将调用返回给客户端的双向回调:允许客户端或服务器处理大量负荷 ...

  5. header('Location:'.C('VIP_HX').'/CmdId/'.$CmdId.'/user_id/'.$user_id.'/Token/'.$Token);

    利用header函数做跳转,跳转至C('VIP_HX')配置文件中VIP_HX的地址下,携带参数CmdId 值为 $CmdIduser_id 值为 $user_idToken 值为 $Token th ...

  6. Mac上编译C++报错

    今天在使用Mac编译C++文件时,提示以下错误. Undefined symbols for architecture x86_64: "std::__1::__vector_base_co ...

  7. 【工匠大道】markdown使用技巧

    本文地址 提纲: 1. 概述 2. 常见技巧 3. 参考文档 1. 概述 常见的markdown的技巧,这里不再谈了,主要是自己感觉比较少见但有用的技巧. 2. 常见技巧   1)[空格]生成空格的效 ...

  8. Java子类属性继承父类属性

    public abstract class Parent { String name = "parent"; } public class Son extends Parent{ ...

  9. 禁止root用户远程登录

    Linux修改ssh端口22 vi /etc/ssh/ssh_config vi /etc/ssh/sshd_config 然后修改为port 8888 以root身份service sshd res ...

  10. 字符编码笔记:ASCII,Unicode和UTF-8

    很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物.他们看到8个开关状态是好的,于是他们把这称为"字节". 再后来,他们又做了一些可以处理 ...