1. 为什么要编译openjdk的code? 因为从Eclipse调试JDK的代码时,方法中的局部变量不能显示,这样是因为编译JDK时,没有编译成debug版本。

2. RHEL5中自带的开发者JDK已经是debug版本了,所以可以直接使用。

例如:java-1.6.0-openjdk-devel-1.6.0.0-1.24.1.10.4.el5

3. 在Eclipse中如何使用其它版本的JDK,首先在preference中将编译好的JDK路径添加进去,然后修改工程中的JDK依赖关系,重新编译工程,debug到 JDK中,这时JDK代码中的局部变量就可以查看了

这里的方法是从http://hg.openjdk.java.net/jdk7/build/raw-file/tip/README-builds.html来的。

下面开始具体的步骤:

1. 安装setuptools

install setuptools in windows/linux
1.1. download https://bitbucket.org/pypa/setuptools/raw/0.7.4/ez_setup.py
1.2. run it with python

2. 安装Mercurial

install Mercurial in linux:
2.1 easy_install -U mercurial

3. 下载openjdk的source

download open jdk 7 source

3.1 hg clone http://hg.openjdk.java.net/jdk7/jdk7 YourOpenJDK

3.2 cd YourOpenJDK

3.3 sh ./get_source.sh

4. 安装Ant和freetype

install ant 1.7
install freetype 2.3

4.1 从apache的网站上下载ant的zip包,解压到任意目录

4.2 从sourceforge上下载2.3版本的freetype的source包

使用下面的命令安装:

./configure && make && sudo -u root make install

5.设置环境变量

5.1 LANG和BOOTDIR

export LANG=C
export ALT_BOOTDIR=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64

5.2  Ant

export ANT_HOME=/tmp/ant/apache-ant-1.7.1
export PATH=/tmp/ant/apache-ant-1.7.1/bin:$PATH

5.3 Freetype(这里是默认的安装路径)

export ALT_FREETYPE_HEADERS_PATH=/usr/local/include/
export ALT_FREETYPE_LIB_PATH=/usr/local/lib/

6. 检查一切完好

gmake sanity ARCH_DATA_MODEL=64

7. 编译

gmake
#make debug version
gmake ALLOW_DOWNLOADS=true fastdebug_build
gmake ALLOW_DOWNLOADS=true debug_build

[置顶] How to compile openjdk 7 in RHEL5的更多相关文章

  1. 66.为什么有时候在ISE软件中,顶层文件不能置顶?

    什么时候回出现顶层文件不能置顶呢?嘿嘿,肯定是工程中有错误啦. 如果你的顶层文件包含了include文件,这个时候就会出现这种情况了.但好像出现在刚新建工程的时候,因为当顶层文件不包括Include文 ...

  2. Ionic-wechat项目边开发边学(四):可伸缩输入框,下拉刷新, 置顶删除

    摘要 上一篇文章主要介绍了ion-list的使用, ion-popup的使用, 通过sass自定义样式, localStorage的使用, 自定义指令和服务. 这篇文章实现的功能有消息的置顶与删除, ...

  3. RecyclerView实现侧滑删除、置顶、滑动

    1.首先在build.gradle里添加 compile 'com.github.mcxtzhang:SwipeDelMenuLayout:V1.2.1' 2.设置recyclerView的item布 ...

  4. 在UWP中页面滑动导航栏置顶

    最近在研究掌上英雄联盟,主要是用来给自己看新闻,顺便copy个界面改一下段位装装逼,可是在我copy的时候发现这个东西 当你滑动到一定距离的时候导航栏会置顶不动,这个特性在微博和淘宝都有,我看了@ms ...

  5. WinFrom窗体始终置顶

    调用WindowsAPI使窗体始终保持置顶效果,不被其他窗体遮盖: [DllImport("user32.dll", CharSet = CharSet.Auto)] privat ...

  6. winform窗体置顶

    winform窗体置顶 金刚 winform 置顶 今天做了一个winform小工具.需要设置置顶功能. 网上找了下,发现百度真的很垃圾... 还是必应靠谱些. 找到一个可以链接. https://s ...

  7. 自定义置顶TOP按钮

    简述一下,分为三个步骤: 1. 添加Html代码 2. 调整Css样式 3. 添加Jquery代码 具体代码如下: <style type="text/css"> #G ...

  8. ahk之路:利用ahk在window7下实现窗口置顶

    操作系统:win7 64位 ahk版本:autohotkey_L1.1.24.03 今天安装了AutoHotkey_1.1.24.03.SciTE.PuloversMacroCreator,重新开始我 ...

  9. Qt中让Qwidget置顶的方法

    一般来是说窗体置顶和取消只要        setWindowFlags(Qt::WindowStaysOnTopHint);        setWindowFlags(Qt::Widget); 要 ...

随机推荐

  1. [问题解决] LaTex Error:Unknown graphics extension:.eps

    错误:编译的时候显示:“!LaTex Error:Unknown graphics extension:.eps” 发生场景:Latex写论文 解决方案: latex eps.texdvi2ps ep ...

  2. Cortex-M3和Cortex-M4 Fault异常应用之一 ----- 基础知识

    1. 摘要 Cortex-M内核实现了一个高效异常处理模块,可以捕获非法内存访问和数个程序错误条件.本应用笔记从程序员角度描述Cortex-M Fault异常,并且讲述在软件开发周期中的Fault用法 ...

  3. iOS多线程系列(2)

    前面了iOS的NSThread方法来实现多线程,这篇就简单的讲讲NSOperation和NSOperationQueue. NSOperation是一个抽象类,定义一个要执行的任务.NSOperati ...

  4. apache重启操作

    方法: apahce启动命令: 推荐/apachectl start apaceh启动 apache停止命令 /apachectl stop   停止 apache重新启动命令: /apachectl ...

  5. Day1_算法分析方法

    课堂笔记: 程序执行效率影响因子: 输入:评估时使用最坏情况输入 输入大小:考虑n渐进∞ 机器执行效率: 忽略 两种排序算法比较 插入排序n2 归并排序nlgn 递归 技能1:评估多项式的时间级数θ ...

  6. centos6.4 ceph安装部署之ceph block device

    1,prelight/preface ceph storage clusterceph block deviceceph filesystemceph object storage 此篇记录ceph ...

  7. 网易云课堂_C语言程序设计进阶_第8周:图形交互程序

    8.2函数指针 8.2函数指针 #include <stdio.h> #include <stdlib.h> void f(int i) { printf("void ...

  8. update慢怎样处理?

    update慢: 1.表的pctfree參数设置? 2.运行计划用索引还是全表扫? 3.SQL语句写法问题? 4.update慢还是commit慢? 5.更新多少条数据? 6.表是否频繁update造 ...

  9. SQL整理2

    数据库的概念 结构化查询语言:structured query language 简称:SQL 数据库管理系统:database management system 简称:DBMS 数据库管理员:da ...

  10. 常用的sql server规范

    常见的字段类型选择1.字符类型建议采用varchar/nvarchar数据类型2.金额货币建议采用money数据类型3.科学计数建议采用numeric数据类型4. 自增长标识建议采用bigint数据类 ...