OpenJDK 7 をMac OSXにポートする際の要件や事前条件、ビルド手順の詳細は以下のwikiに記載されています。
Mac OS X Port
http://wikis.sun.com/display/OpenJDK/Mac+OS+X+Port
わかりやすく手順が説明されていますので、読めばわかるはずです。
今回はMacBook Pro 10.7.2上で試してみました。
- 以下のコマンドでプリインストールされているJavaのバージョンを確認します。
> java -version java version "1.6.0_26" Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11A511c) Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-383, mixed mode)
- Mercurial を mercurial.berkwood.com からダウンロードし、インストールします(10.7用zip bundleはこちらからダウンロードできます)。
今回は the/usr/local/bin
にインストールしています。
- 太字で強調したコマンドを使い、ソースコードを取得します。
hg clone http://hg.openjdk.java.net/macosx-port/macosx-port
destination directory: macosx-port
requesting all changes
adding changesets
adding manifests
adding file changes
added 437 changesets with 364 changes to 33 files
updating to branch default
31 files updated, 0 files merged, 0 files removed, 0 files unresolved
cd macosx-port
chmod 7555 get_source.sh
./get_source.sh
# Repos: corba jaxp jaxws langtools jdk hotspot
Starting on corba
Starting on jaxp
Starting on jaxws
Starting on langtools
Starting on jdk
Starting on hotspot
# hg clone http://hg.openjdk.java.net/macosx-port/macosx-port/corba corba
requesting all changes
adding changesets
adding manifests
adding file changes
added 396 changesets with 3275 changes to 1379 files
. . .
# exit code 0
# cd ./corba && hg pull -u
pulling from http://hg.openjdk.java.net/macosx-port/macosx-port/corba
searching for changes
no changes found
# exit code 0
# cd ./jaxp && hg pull -u
pulling from http://hg.openjdk.java.net/macosx-port/macosx-port/jaxp
searching for changes
no changes found
# exit code 0
- App Storeから Xcode をダウンロード、インストールし、環境変数PATHに
/Developer/usr/bin
を含めておきます。
注意
JDK 1.6.0_26 がプリインストールされており、その上にXcodeをインストールしています。今回はこの組み合わせでうまく動作し、wikiの手順にあるようなMac OSXへのJava再インストールは不要でした。 - 以下のようにコードをビルドします。
make ALLOW_DOWNLOADS=true SA_APPLE_BOOT_JAVA=true ALWAYS_PASS_TEST_GAMMA=true ALT_BOOTDIR=`/usr/libexec/java_home -v 1.6` HOTSPOT_BUILD_JOBS=`sysctl -n hw.ncpu`
ビルドが終了すると、以下のような表示が現れるはずです。
>>>Finished making images @ Sat Nov 19 00:59:04 WET 2011 ... >>>Finished making images @ Sat Nov 19 00:59:04 WET 2011 ... ######################################################################## ##### Leaving jdk for target(s) sanity all docs images ##### ######################################################################## ##### Build time 00:17:42 jdk for target(s) sanity all docs images ##### ######################################################################## ## Build times ########## Target all_product_build Start 2011-11-19 00:32:40 End 2011-11-19 00:59:04 00:01:46 corba 00:04:07 hotspot 00:00:51 jaxp 00:01:21 jaxws 00:17:42 jdk 00:00:37 langtools 00:26:24 TOTAL #########################
- ディレクトリを移動して、バージョンを確認しましょう。
>cd build/macosx-universal/j2sdk-image/1.7.0.jdk/Contents/Home/bin
>./java -version
openjdk version "1.7.0-internal"
OpenJDK Runtime Environment (build 1.7.0-internal-arungup_2011_11_19_00_32-b00)
OpenJDK 64-Bit Server VM (build 21.0-b17, mixed mode)
現在のバグ報告はこちら。
http://java.net/jira/secure/IssueNavigator.jspa?mode=show&requestId=10795
バグ登録はこちら。
http://java.net/jira/browse/MACOSX_PORT
macosx-port-devメーリングリスト登録はこちら。
http://mail.openjdk.java.net/mailman/listinfo/macosx-port-dev
原文はこちら。
http://blogs.oracle.com/arungupta/entry/build_open_jdk_7_on
0 件のコメント:
コメントを投稿