LWJGL ライブラリの開発環境を整える
LWJGL を自分で拡張したい等の理由で、LWJGL 自体の開発環境を整える手順を書き残しておきたいと思います。環境は例によって Linux(Fedora 17)です。LWJGL はプロジェクトも順調に進んでいますし、自分でライブラリ本体のメンテナンスをしなければならないということはないでしょうが、せっかくのオープンソースプロジェクトですし、一念発起してソースをいじってみたいという方が居ないとも限らないので、私が環境構築した際の情報を残しておきたいと思います。
ただ、LWJGL 自体を開発するための資料は見つけられなかったので、ソースコードを自前で eclpse に読み込んでいます。不足事項などあれば御指摘ください。
ソースコードを取ってくる
eclipse の workspace 内で git clone します。$ cd workspace $ git clone https://github.com/LWJGL/lwjgl.gitlwjgl ディレクトリとしてソースコードがダウンロードされます。
LWJGL をビルドする
一度 LWJGL をビルドしておき、一部のソースコードを自動生成させます。$ cd lwjgl $ antビルドに関する詳細は前回の LWJGL のビルド手順を参照してください。
Eclipse プロジェクトを作成する
eclipse を起動し、java プロジェクトを作ります。プロジェクト名は lwjgl とします。workspace 内には既に git clone した lwjgl ディレクトリがあるので、内部のファイルが作成したプロジェクトに読み込まれます。
ここから lwjgl 内のソースコードを取捨選択していきます。
以下のディレクトリがソースフォルダとして認識されていると思うので、プロジェクトの設定ダイアログから、これらを外していきます。
・eclipse-update/org.lwjgl.build/src/java
・eclipse-update/org.lwjgl.build/test/java
・eclipse-update/org.lwjgl.info/src/java
・eclipse-update/org.lwjgl.tools/src/java
・eclipse-update/org.lwjgl/src/java
eclipse-update/下のコードは eclipse プラグインのソースコードなので今回は外していますが、そちらを触りたいのであれば Java ビルドパスの設定で eclipse plugin を開発するために必要な jar を追加してください。
テストコードは junit が使われているので、junit.jar の追加も必要になります。
同様に、src/template ディレクトリもソースフォルダから外します。
src/template は Annotation Processing Tool によって、ビルド時に自動生成されるソースコードのもとになるテンプレートが配置されています。使うのは自動生成されたコードで、テンプレート自体は使わないので、src/template ディレクトリはソースフォルダから外しておきましょう。
かわりに、自動生成されたソースコードは src/generated 以下に作られるので、src/generated ディレクトリはソースフォルダに追加しておきます。
最後に、java ビルドパスに tools.jar 加えておきます。プロジェクトの設定ダイアログで、外部ライブラリとして追加してください。
tools.jar は JDK に含まれるライブラリです。LWJGL は Java6 時代の Annotation Processing Tool を使っているので、com.sun.mirror など、tools.jar に含まれる古いパッケージを import しています。
tools.jar 自体は普通 VM といっしょに配布されています。Oracle の Linux 用 VM では、<jdk のホームディレクトリ>/lib/ 下にあるのでこれをつけ加えてください。
これで eclipse 上からプロジェクトを再ビルドすれば、jar の依存関係なども綺麗に解決されます。
LWJGL プロジェクトで動かしてみる
eclipse に読み込んだ lwjgl プロジェクト内に適当なプログラムを用意し、実際に LWJGL を動かしてみましょう。lwjgl プロジェクトに test パッケージを作り、LWJGL の環境構築編で使った DrawQuad.java をコピペしてみました。
実行時には LWJGL のネイティブライブラリを指定することを忘れないでください。Linux 環境では libs/linux/ ディレクトリ内にネイティブライブラリがビルドされるので、VM の引数として -Djava.library.path=libs/linux/ を指定してやります。
こちらが実行結果。しっかり動いてますね。
これにて LWJGL 本体の開発環境が整いました。
LWJGL, Linux コメント (0) 2013/06/25 22:35:08