OpenJDKのビルド方法
OpenJDKのビルド方法
Ubuntu10でのOpenJDK6のビルド方法
環境
Linux Ubentu 10.04 GNOME 2.30.2
ビルド手順
(1) ソースコードを展開する
(2) 必要な前提ソフトウェアをインストールする
(3) 環境変数を設定する
(4) makeを繰り返しながら、足りないヘッダを含むdevパッケージをインストールする。
(1) ソースコードを展開する
$ mkdir openjdk
$ cd openjdk
$ tar zxvf openjdk-6-src-b22-28_feb_2011.tar.gz # その場に展開することに注意する
(2) 必要な前提ソフトウェアをインストールする
$ make sanity
で、必要な依存パッケージや、必要な環境変数を教えてくれる。
実際に追加したパッケージのリストを以下に示す。
ant |
libasound2-dev |
libfreetype-dev |
libmotif-dev |
libcups2-dev |
(3) 環境変数を設定する
$ export LANG=C #日本語が処理できないため。makeに手を入れてiconv等を挿入してもよい。
$ unset JAVA_HOME
$ export ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk #bootに必要なjdkを設定 なければインストール
$ export ALLOW_DOWNLOADS=true
上記を設定して、make sanityするとpassするはず。
(4) makeを繰り返しながら、足りないヘッダを含むdevパッケージをインストールする。
追加でインストールしたパッケージは以下
libxext-dev |
libxtst-dev |
libxp-dev |
libxrender-dev |
この状態でmakeする。
$ make help
$ make ※debug版は、make debug_build
ビルドが終了すると、下記に実行ファイルができる。
/.../openjdk/build/linux-i586-debug/bin
appletviewer java jdb jstack policytool tnameserv
apt java-rmi.cgi jhat jstat rmic unpack200
extcheck javac jinfo jstatd rmid wsgen
hotspot.log javadoc jmap keytool rmiregistry wsimport
idlj javah jps native2ascii schemagen xjc
jar javap jrunscript orbd serialver
jarsigner jconsole jsadebugd pack200 servertool
Ubuntu12 x64でのOpenJDK7uのビルド方法
ソースコードの取得
cd jdk7u
./get_source.sh
環境変数の設定
$ export LANG=C
$ unset JAVA_HOME
$ export ALT_BOOTDIR=/usr/lib/jvm/java-7-oracle //ここの設定は各自
$ export ALLOW_DOWNLOADS=true
足りないパッケージの追加
追加でインストールしたパッケージは以下
$ make sanityで事前チェックできる。
下記はmake sanityが教えてくれる
ant |
libasound2-dev |
libmotif-dev |
libcups2-dev |
make後のビルドエラー
g++ |
gawk |
libxext-dev |
libxtst-dev |
libxp-dev |
libxrender-dev |
make
$ make
しながら、足りないパッケージを追加していく。
上記で全部足りると思うんだけど。。
Ubuntu12 x64でのOpenJDK8のビルド方法
OpenJDK8からconfigureが追加された
しかもconfigureを叩くと、足りないライブラリを教えてくれて、このapt-getを叩くんだ!と教えてくれるのでべんり。
環境変数の設定も不要になった。
基本的には下記のコマンドのみでビルドに成功する。
./configure //足りないパッケージがあるとapt-getでおしえてくれる。
make
memo
$ make debug_build ALLOW_DOWNLOADS=true SA_APPLE_BOOT_JAVA=true ALWAYS_PASS_TEST_GAMMA=true ALT_BOOTDIR=/usr/lib/jvm/java-6-openjdk
デバッグ情報を追加してビルドしたい場合、下記を変更する
openjdk/hotspot/make/linux/makefiles/gcc.make
-gstabs -> -g
-gstabsの場合、libjvm_g.soが、16M程度に収まり、line numberとlocal variableの参照は問題なく行うことができる。 -gの場合、libjvm_g.soが、150M程度になるが、不要なシンボル等が削除されずに残る。
- 最終更新:2014-04-08 23:48:16