1.
安裝mercurial
Mercurial是一個版本管理工具。
sudo apt-get install mercurial
安裝mercurial的擴展,添加fclone在支持
hg clone
http://bitbucket.org/pmezard/hgforest-crew
將以下內容添加到$HOME/.hgrc文件中,如果沒有則自己創建一個:
[extensions]
forest=/home/daren/hgforest-crew/forest.py
fetch=
2.
下載jdk7源碼
hg fclone http://hg.openjdk.java.net/jdk7/jdk7
3.
安裝gcc、g++、make等
sudo apt-get
install build-essential
4.
安裝XRender
sudo apt-get install libxrender-dev
sudo apt-get install xorg-dev
5.
安裝alsa
sudo apt-get install libasound2-dev
6.
Cups
sudo apt-get install libcups2-dev
7.
安裝jdk6
8.
安裝ant
設置ANT_HOME
9.
安裝findbugs
編譯需要這玩意兒有點奇怪。需要設置FINDBUGS_HOME
10.
測試編譯
export LANG=C ALT_BOOTDIR=/opt/jdk1.6.0_22/
#刪除JAVA_HOME
export -n JAVA_HOME
export ALT_JDK_IMPORT_PATH=/opt/jdk1.6.0_22/
make sanity BUILD_JAXWS=false BUILD_JAXP =false
在build BUILD_JAXWS和BUILD_JAXP總是提示找不到源文件,而我又暫時對只對JDK、Hotspot感興趣,所以索性把這兩個給去掉。
如果出現:Sanity check passed.則表示測試編譯通過了,不過也別開心得太早,真正make的時候不保證一定沒問題,也許還會缺少某些依賴。
11.
編譯
export LANG=C
ALT_BOOTDIR=/opt/jdk1.6.0_22/
#刪除JAVA_HOME
export -n
JAVA_HOME
export
ALT_JDK_IMPORT_PATH=/opt/jdk1.6.0_22/
#make
BUILD_JAXWS=false BUILD_JAXP=false
#make
DEBUG_NAME=fastdebug BUILD_JAXWS=false BUILD_JAXP=false
make DEBUG_NAME=all_fastdebug BUILD_JAXWS=false
BUILD_JAXP=false
如果一切正常的話在$HOME/jdk7/build/linux-i586/下就有build出來的jdk等了。