On 05/12/2012 04:59 PM, Thorsten Glaser wrote: > Andrew Haley dixit: > >> Oh, gosh. As you say, it looks like strace isn't working. I can't > > I managed to get further by usine -o but *not* -f (or -ff), since > using -o with -ff showed a child process’ log consisting exactly of: > > --- SIGPWR (Power failure) @ 0 (0) --- > --- SIGXCPU (CPU time limit exceeded) @ 0 (0) --- > +++ killed by SIGINT +++ > > I believe it hung there. > > Added to the logs were: > > - stdout/stderr - > > [Loaded (pre-compiled) java.util.PropertyResourceBundle from <no code source>] > [Loaded (pre-compiled) gnu.gcj.convert.Input_8859_1 from <no code source>] > [Loaded (BC-compiled) org.eclipse.jdt.internal.compiler.env.AccessRestriction > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.batch.ClasspathSourceJar from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) org.eclipse.jdt.internal.compiler.batch.ClasspathJar > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.batch.ClasspathLocation from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.batch.ClasspathDirectory from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.env.NameEnvironmentAnswer from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.batch.ClasspathDirectory$1 from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.classfmt.ClassFileReader from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (pre-compiled) > org.eclipse.jdt.internal.compiler.env.IBinaryNestedType from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (pre-compiled) org.eclipse.jdt.internal.compiler.env.IBinaryField > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (pre-compiled) org.eclipse.jdt.internal.compiler.env.IGenericField > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (pre-compiled) org.eclipse.jdt.internal.compiler.env.IBinaryMethod > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (pre-compiled) org.eclipse.jdt.internal.compiler.env.IGenericMethod > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) org.eclipse.jdt.internal.compiler.util.ManifestAnalyzer > from (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (BC-compiled) > org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException from > (file:/usr/share/java/eclipse-ecj-3.5.1.jar <no certificates>)] > [Loaded (pre-compiled) java.lang.ArrayIndexOutOfBoundsException from <no code > source>] > [Loaded (pre-compiled) java.lang.IndexOutOfBoundsException from <no code > source>] > [Loaded (pre-compiled) java.util.Hashtable$1 from <no code source>] > [Loaded (pre-compiled) java.util.Hashtable$KeyIterator from <no code source>] > [Loaded (pre-compiled) java.util.Collections$8 from <no code source>] > Exception in thread "main" [Loaded (pre-compiled) gnu.gcj.runtime.NameFinder > from <no code source>] > [Loaded (pre-compiled) gnu.gcj.runtime.NameFinder$Addr2Line from <no code > source>] > [Loaded (pre-compiled) java.lang.PosixProcess from <no code source>] > [Loaded (pre-compiled) java.lang.Process from <no code source>] > [Loaded (pre-compiled) java.lang.PosixProcess$ProcessManager from <no code > source>] > [Loaded (pre-compiled) java.util.LinkedList from <no code source>] > [Loaded (pre-compiled) java.util.AbstractSequentialList from <no code source>] > [Loaded (pre-compiled) java.util.Deque from <no code source>] > [Loaded (pre-compiled) java.util.Queue from <no code source>] > [Loaded (pre-compiled) java.util.LinkedList$Entry from <no code source>] > [Loaded (pre-compiled) java.util.LinkedList$LinkedListItr from <no code > source>] > [Loaded (pre-compiled) java.util.ListIterator from <no code source>] > [Loaded (pre-compiled) java.io.BufferedWriter from <no code source>] > [Loaded (pre-compiled) java.lang.Throwable$StaticData from <no code source>] > java.lang.NoClassDefFoundError: org.eclipse.jdt.internal.compiler.Compiler > at > org.eclipse.jdt.internal.compiler.batch.Main.performCompilation(eclipse-ecj.jar.so) > at org.eclipse.jdt.internal.compiler.batch.Main.compile(eclipse-ecj.jar.so) > at > org.eclipse.jdt.internal.compiler.batch.GCCMain.compile(eclipse-ecj.jar.so) > at org.eclipse.jdt.internal.compiler.batch.GCCMain.main(eclipse-ecj.jar.so) > > - strace - > > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > stat64(".", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0 > access(".", F_OK) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > lstat64("/root", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0 > stat64("/usr/share/java/libgcj-4.6.jar", {st_mode=S_IFREG|0644, > st_size=10171111, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > open("/usr/share/java/libgcj-4.6.jar", O_RDONLY|O_LARGEFILE) = 6 > stat64("/usr/share/java/libgcj-4.6.jar", {st_mode=S_IFREG|0644, > st_size=10171111, ...}) = 0 > lstat64("/root", {st_mode=S_IFDIR|0755, st_size=20480, ...}) = 0 > lstat64("/root/x.java", {st_mode=S_IFREG|0644, st_size=12, ...}) = 0 > lstat64("/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > lstat64("/usr/share", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > lstat64("/usr/share/java", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 > lstat64("/usr/share/java/libgcj-4.6.jar", {st_mode=S_IFREG|0644, > st_size=10171111, ...}) = 0 > fstat64(3, {st_mode=S_IFREG|0644, st_size=1282644, ...}) = 0 > access("/usr/lib/debug/usr/lib/gcj/eclipse-ecj.jar.so", R_OK) = -1 ENOENT (No > such file or directory) > access("/usr/lib/debug/usr/lib/gcj/eclipse-ecj.jar.so", R_OK) = -1 ENOENT (No > such file or directory) > access("/usr/lib/debug/usr/lib/gcj/eclipse-ecj.jar.so", R_OK) = -1 ENOENT (No > such file or directory) > access("/usr/lib/debug/usr/lib/gcj/eclipse-ecj.jar.so", R_OK) = -1 ENOENT (No > such file or directory) > > I don’t understand why it would want a debugging library here.
It's trying to print a stack trace. > On the other hand, as good news, somehow the command works with > gij-4.4 and its library… but calling it as 'gcj-4.4' directly > still fails: > > root@aranym:~ # gcj-4.4 -c x.java -v -save-temps > Using built-in specs. > Reading specs from /usr/lib/gcc/m68k-linux-gnu/4.4.7/libgcj.spec > rename spec startfile to startfileorig > rename spec lib to liborig > Target: m68k-linux-gnu > Configured with: ../src/configure -v --with-pkgversion='Debian 4.4.7-1' > --with-bugurl=file:///usr/share/doc/gcj-4.4/README.Bugs > --enable-languages=c,c++,java --prefix=/usr --program-suffix=-4.4 > --enable-shared --enable-linker-build-id --with-system-zlib > --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix > --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls > --enable-clocale=gnu --disable-libssp --disable-libmudflap > --disable-browser-plugin --enable-java-awt=gtk --enable-gtk-cairo > --with-java-home=//usr/lib/jvm/java-1.5.0-gcj-4.4/jre --enable-java-home > --with-jvm-root-dir=//usr/lib/jvm/java-1.5.0-gcj-4.4 > --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.4 > --with-arch-directory=m68k --with-ecj-jar=/usr/share/java/eclipse-ecj.jar > --disable-werror --disable-multilib --enable-checking=release > --build=m68k-linux-gnu --host=m68k-linux-gnu --target=m68k-linux-gnu > Thread model: posix > gcc version 4.4.7 (Debian 4.4.7-1) > COLLECT_GCC_OPTIONS='-fsaw-java-file' '-c' '-v' '-save-temps' > '-fbootclasspath=./:/usr/share/java/libgcj-4.4.jar' '-g1' '-shared-libgcc' > '-m68020' > /usr/lib/gcc/m68k-linux-gnu/4.4.7/ecj1 x.java -g1 > -fbootclasspath=./:/usr/share/java/libgcj-4.4.jar -g1 -fsource=1.5 > -ftarget=1.5 -fzip-dependency x.zip -fzip-target x.jar > Exception in thread "main" java.lang.NoClassDefFoundError: > org.eclipse.jdt.internal.compiler.Compiler > at > org.eclipse.jdt.internal.compiler.batch.Main.performCompilation(eclipse-ecj.jar.so) > at org.eclipse.jdt.internal.compiler.batch.Main.compile(eclipse-ecj.jar.so) > at > org.eclipse.jdt.internal.compiler.batch.GCCMain.compile(eclipse-ecj.jar.so) > at org.eclipse.jdt.internal.compiler.batch.GCCMain.main(eclipse-ecj.jar.so) > > Yet… > > root@aranym:~ # gij-4.4 -classpath /usr/share/java/eclipse-ecj.jar > org.eclipse.jdt.internal.compiler.batch.GCCMain x.java -g1 > -fbootclasspath=./:/usr/share/java/libgcj-4.4.jar -g1 -fsource=1.5 > -ftarget=1.5 > root@aranym:~ # echo $?; ls -l x.class > 0 > -rw-r--r-- 1 root root 176 May 12 15:54 x.class Try this with -verbose:class. We need as much info as we can get. > So this is probably not a problem with ecj, and possibly not even > with gcj, but with the precompiled classes? I think so. Another experiment worth doing is deleting /usr/lib/gcj/eclipse-ecj.jar.so. Andrew. -- To UNSUBSCRIBE, email to debian-java-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/4fb0c258.3010...@redhat.com