Hi, everyone. I'm porting GCJ to a non-mainstream platform, which is a RISC machine with some similarity to ARM. The GCC I'm using is version 4.4.2. I start the porting from ARM's code. When running the GCJ on the target platform, it mentioned that the ECJ is needed. I don't know whether GCJ can live without ECJ, so I donwload the latest ECJ jar file and recompiled. When running GCJ to compile a JAVA source file, I got the following error. [root@localhost pxx]# gcj -C HelloWorld.java -v Using built-in specs. Target: unicore32-linux Configured with: /home/vhome/FengYi/pxx/mydir/gcc-4.4.2/configure --host=unicore32-linux --target=unicore32-linux --prefix=/usr --build=i686-redhat-linux-gnu --enable-clocale=gnu --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-languages=java --with-gnu-ld --disable-libstdcxx-pch --disable-multilib --with-pkgversion=UC4_1.0_gama_20101228 Thread model: posix gcc version 4.4.2 (UC4_1.0_gama_20101228) COLLECT_GCC_OPTIONS='-fsaw-java-file' '-C' '-v' '-fbootclasspath=./:/usr/share/java/libgcj-4.4.2.jar' '-g1' '-fsyntax-only' '-femit-class-files' '-S' '-o' 'NONE' '-shared-libgcc' /usr/libexec/gcc/unicore32-linux/4.4.2/ecj1 HelloWorld.java -g1 -fbootclasspath=./:/usr/share/java/libgcj-4.4.2.jar -g1 -fsource=1.5 -ftarget=1.5 -fzip-dependency /tmp/ccTF9EKh.zip Exception in thread "main" java.lang.ExceptionInInitializerError at 0x1(Unknown Source) at 0x3(Unknown Source) at 0x5(Unknown Source) at 0x5(Unknown Source) at 0x5(Unknown Source) at 0x5(Unknown Source) at 0x5(Unknown Source) at 0xffffffffffffffff(Unknown Source) at 0x2(Unknown Source) at 0xffffffffffffffff(Unknown Source) at 0xffffffffffffffff(Unknown Source) Caused by: java.lang.NullPointerException at 0x1(Unknown Source) at 0x5(Unknown Source) at 0x4(Unknown Source) ...9 more Could anyone give me some hints on how could this happen? I really appreciate you patience.