Cygwin GCJを試す。
GCJがうまく動かなかったのでメモしておきます。
まずはソース。Hello.java
public class Hello { public static void main(String args[]) { System.out.println("Hello,GCJ World!!"); } }
$ gcc Hello.java /cygdrive/c/DOCUME~1/tanaka/LOCALS~1/Temp/ccMgMOn2.o:Hello.java:(.text+0x8): und efined reference to `java::lang::System::class$' いろいろ〜
gccではパスがうまく解決しなかった。ではgcjでコンパイル。
$ gcj Hello.java /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/bin/ld: cannot find -liconv collect2: ld returned 1 exit status
今度は、libconvが無いって怒られました。cygwinインストーラーでlibconvをインストール。
$ gcj Hello.java /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../libcygwin.a(libcmain.o):(.text+0xab): undefined reference to `_WinMain@16' collect2: ld returned 1 exit status
う〜メインが見つからないって怒られた。
$ gcj --main=Hello Hello.java
お
$ ./a Hello,GCJ World!!
うまくいきました。exeファイルが生成できます。