歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu 14.04下Java虛擬機(HOTSPOT)源代碼編譯步驟

Ubuntu 14.04下Java虛擬機(HOTSPOT)源代碼編譯步驟

日期:2017/2/28 13:52:52   编辑:Linux教程

概述

  1. hotspot源代碼包含在openjdk7中

  2. openjdk7包含了jdk的Java代碼,所以要用jdk6對這部分代碼進行編譯。(有點類似於gcc高版本代碼要用gcc低版本編譯一樣)

准備

  1. openjdk 7 源代碼
    http://pan.baidu.com/s/1hsrrkEC
    強烈建議初學者,用這個jdk源代碼,按照下面的教程配置。其他源代碼編譯時,可能會出現各種古怪問題

  2. 工作環境
    Ubuntu 14.04


編譯步驟

安裝依賴項

sudo apt-get install build-essential gawk m4 openjdk-6-jdk libasound2-dev libcups2-dev libxrender-dev xorg-dev xutils-dev X11proto-print-dev binutils libmotifs3 libmotif-dev ant

解壓縮openjdk源代碼
我把它放到了 Home目錄下面了


Hotspot編譯前配置:
cd 進入openjdk源代碼目錄,切換root用戶

su root

導入以下環境變量:

export LANG=C
export ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk-i386
export ALT_JDK_IMPORT_PATH=/usr/lib/jvm/java-6-openjdk-i386
export ALLOW_DOWNLOADS=true
export HOST_BUILD_JOBS=4
export USE_PRECOMPILED_HEADER=true

export BUILD_LANGTOOLS=true
export BUILD_JAXP=true
export BUILD_JAXWS=true
export BUILD_CORBA=true
export BUILD_HOTSPOT=true
export BUILD_JDK=true

export BUILD_INSTALL=false

export ALT_OUTPUTDIR=/home/zxf/openjdk7/build
unset JAVA_HOME
unset CLASSPATH

export WARNINGS_ARE_ERRORS=false
export SKIP_DEBUG_BUILD=false
export SKIP_FASTDEBUG_BUILD=true
export DEBUG_NAME=debug

ALT_OUTPUTDIR=/home/zxf/openjdk7/build,修改成你的openjdk7所在的路徑的

ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk-i386,ALT_JDK_IMPORT_PATH=/usr/lib/jvm/java-6-openjdk-i386是java6的路徑,一般不需要修改,裝完 openjdk-6-jdk一般就在這個路徑上

Hotspot編譯前檢查:

make sanity

按照上面環境變量配置後,make sanity 一般不會出問題


Hotspot編譯:

make DEBUG_BINARIES=true

一定要加上DEBUG_BINARIES=true

半個小時基本就能搞定:


Hotspot編譯後位置:

build和build-debug目錄裡面的東西就是啦。

更多Ubuntu相關信息見Ubuntu 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=2

Copyright © Linux教程網 All Rights Reserved