新千葉 ガーベージ・コレクション

FPGA マガジンやインターフェースで書けなかったこと等をちょぼちょぼ書いてます。@ryos36

Zynq で Java

Oracle も ARM 用の Java を出しているようだが、そちらはなんとなく使いたくなかったので、オープンソースのものを探してみた。以前、つかっていた kaffe はもうずーと更新していないようだ。avian と Mika というのものをみつけた。Mika は fb もアクセスできるようなことを書いていてなかなかよさそうなのだが、svn で管理されている。avian は git で管理されている。
git の方が使いやすいという単純な理由から avian をとりあえずコンパイル。
avian 自身は非常に軽い。なにしろ依存関係が zlib しかない。zlib を Zynq 用にコンパイルして、avian をコンパイル。あっというまに出来上がり。Zynq Linux ですべてのついてきた Diagram のテスト以外はすべて通った。Diagram も loopback という名称が解決できなかっただけで、127.0.0.1 を使うことで Java としては動作した。
つぎに欲しくなるのは Java bytecodes compiler だ。javac があればいい気もするが、実際いちいち i386 にもどってコンパイルして、、、なんてことはしたくないので、arm ですべて解決したい。javac のでかい環境を必要としないほうがよい。これは jikes を選んだ。jikes も開発が止まっている。
2000 年頃の Java の勢いはなんだったのだろう?まぁ落ち着いたということか?Java はあまり必要とされていないのかもしれない。他のスクリプト言語で十分ということか?
jikes も簡単にコンパイルで来た。

zynq> ./build/linux-arm/avian Hello
hello, world! by jikes