2016年 4月

Valhalla 楽しい?

Java

ずっとブログの更新さぼってます。

5月26日には JDK 9 の Feature Complete となります。

JDK 9 についてノータッチでどんな楽しいことが増えているのか全然解りません。(^_^;)

そろそろ General Availability に備えて予習を始めなくてはいけない頃です。

しかし、JDK 9 の主役は JDK 8 に間に合わなかった Jigsaw のようです。

これは優秀な IDE が至れり尽くせりでやってくれることに期待して私は JDK 10 の注目機能の Valhalla を少しだけ触ってみることにしました。

まず、Valhalla を使えるようにするには OpenJDK からソースをとってきてビルドしなくてはなりません。

Linux だとそんなに面倒でもないけど Windows だとちょっと面倒なんだよね。

それに Linux でよければ Jenkins でビルドされたものを落とすだけの超お手軽なこともできます。

アドレスを載せるのはちょっと控えておきます。

valhalla-dev Archives に載っているはずです。

興味のある方は探し出してください。(o_ _)o

さて、私は Windows で動かしてみたいので Valhalla をビルドすることにします。

ちなみに私がこれからビルドした方法が正しいかどうかは解りません。( ̄▽ ̄;)

お手軽な方法で済ませます。

まず、Visual Studio Community 2013 with Update 5 インストールします。

https://www.visualstudio.com/downloads/download-visual-studio-vs

m1

m2

インストールしたら Freetype をビルドするためのパスを通しておきます。

C:\Program Files (x86)\MSBuild\12.0\Bin

m3

Freetype をダウンロードし、解凍します。

https://sourceforge.net/projects/freetype/files/freetype2/2.6.2/ft262.zip/download

次に、Babun をインストールします。

http://babun.github.io/

1

Babun shell で zip と mercurial をインストールします。

pact install zip mercurial

2

作業用のディレクトリを作ります。

mkdir -p /cygdrive/c/openjdk/valhalla

さっきダウンロードして解凍しておいた Freetype を /cygdrive/c/openjdk にコピーしておきます。

cp -r /cygdrive/c/Users/Yucchi/Downloads/ft262/freetype-2.6.2 /cygdrive/c/openjdk

そして /cygdrive/c/openjdk に移動します。

3

mercurial を使ってリポジトリより Valhalla のソースをとってきます。

hg clone http://hg.openjdk.java.net/valhalla/valhalla valhalla

cd valhalla

./get_source.sh

4

怪しいので変なオプションもつけています。

./configure –disable-warnings-as-errors –with-freetype-src=/cygdrive/c/openjdk/freetype-2.6.2

5

6

ビルドします。

make all

(make all でなくて make images でいいようです。)

7

終わりです。

8

動くか試してみました。

a1

とりあえず動いているようです。

もっといろいろためしてみたいのですが Valhalla はまだまだ慎重にどうするか検討しながら進めているようなのでもう少ししてから試した方が良さそうですね。

それに NetBeans などの優秀な IDE でお手軽に試せないとツラいです。(>_<。)

今回はビルドだけ試したようなものですが Visual Studio 2010 を使用する以前の方法と比べると随分楽になりました。

Windows SDK 7.1 のインストールで罠にはまることも無くなったし、

Visual Studio 2010 SP1 、Visual C++ 2010 SP1 Compiler Update for the Windows SDK 7.1、Microsoft DirectX 9.0 SDK のインストールや順番などの細かい罠にはまることも無くなった。

Valhalla の Value Types や Generic Specialization をもっと手軽に楽しめる環境がやってくるのが待ち遠しい!

IntelliJ IDEA は Valhalla が動きそうな雰囲気はあるけど使い方が良く解らなかったので上記のコードは動かせなかった。

誰か試してけろ。

そういうことでお終いです!

Hatena タグ: ,