This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Help with multilibs on make check


Andreas Jaeger <aj@arthur.inka.de> writes:

> I noticed that on Linux/AMD64 which uses 32-bit x86 and 64-bit x86-64
> multilibs, some 32-bit tests fail (if using
> RUNTESTFLAGS="--target_board 'unix{-m32,}'" for testing both
> multilibs).
>
> Looking closer, the problem is that tests fail using gij:
> Running /cvs/gcc/libjava/testsuite/libjava.jni/jni.exp ...
> FAIL: PR15133 execution - gij test
> FAIL: calls execution - gij test
> FAIL: cxxtest execution - gij test
> FAIL: field execution - gij test
> FAIL: final_method execution - gij test

I figured out the problem, we're invoking the 64-bit gij:

aj@gromit:/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/testsuite> LD_LIBRARY_PATH=.:/builds/gcc/misc/x86_64-suse-linux-gnu/32/libjava/.libs:/builds/gcc/misc/gcc /builds/gcc/misc/x86_64-suse-linux-gnu/libjava/testsuite/../gij virtual
Exception in thread "main" java.lang.UnsatisfiedLinkError: libvirtual: ./libvirtual.so: cannot open shared object file: No such file or directory
   at java.lang.Runtime._load(java.lang.String, boolean) (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at java.lang.Runtime.loadLibrary(java.lang.String) (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at java.lang.System.loadLibrary(java.lang.String) (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at virtual.<clinit>() (Unknown Source)
   at java.lang.Class.initializeClass() (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at java.lang.Class.forName(java.lang.String, boolean, java.lang.ClassLoader) (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at gnu.java.lang.MainThread.run() (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at _Jv_ThreadRun(java.lang.Thread) (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at _Jv_RunMain(java.lang.Class, byte const, int, byte const, boolean) (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgcj.so.6.0.0)
   at main (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/.libs/libgij.so.0.0.0)
   at __libc_start_main (/lib64/tls/libc.so.6)
   at _start (/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/testsuite/../sysdeps/x86_64/elf/start.S:116)

Running the 32-bit gij gives the correct result:
aj@gromit:/builds/gcc/misc/x86_64-suse-linux-gnu/libjava/testsuite> LD_LIBRARY_PATH=.:/builds/gcc/misc/x86_64-suse-linux-gnu/32/libjava/.libs:/builds/gcc/misc/gcc /builds/gcc/misc/x86_64-suse-linux-gnu/32/libjava/testsuite/../gij virtual
false

So, now I only need to tell our testsuite to use the correct gij
version...

Andreas
-- 
 Andreas Jaeger, aj@suse.de, http://www.suse.de/~aj
  SUSE Linux Products GmbH, Maxfeldstr. 5, 90409 NÃrnberg, Germany
   GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126

Attachment: pgp00000.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]