Hi, On Fri, 2007-06-29 at 11:59 +0200, Christian Thalinger wrote: > > Unfortunately compiling and running cacao trunk reliably produces this: > > > > LOG: [0xb7daf6c0] We received a SIGSEGV and tried to handle it, but we > > were > > LOG: [0xb7daf6c0] unable to find a Java method at: > > LOG: [0xb7daf6c0] > > LOG: [0xb7daf6c0] PC=0xb7394449 > > LOG: [0xb7daf6c0] > > Ugh. Could you run it in gdb and do a backtrace? It works for me on > different arm boxes. This isn't even on an arm box: Linux devel-server 2.6.20-15-generic #2 SMP Sun Apr 15 07:36:31 UTC 2007 i686 GNU/Linux The information is below: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1209882944 (LWP 5826)] 0xb7410449 in JCL_FindClass (env=0x804a770, className=0xb7412f31 "java/nio/Buffer") at jcl.c:227 227 jclass retval = (*env)->FindClass (env, className); (gdb) bt full #0 0xb7410449 in JCL_FindClass (env=0x804a770, className=0xb7412f31 "java/nio/Buffer") at jcl.c:227 retval = <value optimized out> #1 0xb740c6b9 in Java_gnu_java_nio_VMChannel_initIDs (env=0x804a770, clazz=0x80b9bb0) at gnu_java_nio_VMChannel.c:319 bufferClass = <value optimized out> byteBufferClass = (jclass) 0xb740c69b #2 0xb745fcf4 in ?? () No symbol table info available. #3 0x0804a770 in ?? () No symbol table info available. #4 0x080b9bb0 in ?? () No symbol table info available. #5 0xbfdeb810 in ?? () No symbol table info available. #6 0xb745fc59 in ?? () No symbol table info available. #7 0xb740c690 in ?? () at gnu_java_nio_VMChannel.c:1077 from /usr/local/classpath/lib/classpath/libjavanio.so set_limit_mid = (jmethodID) 0x0 address_fid = (jfieldID) 0x0 thread_interrupted_mid = (jmethodID) 0x0 array_offset_mid = (jmethodID) 0x0 get_limit_mid = (jmethodID) 0x0 array_mid = (jmethodID) 0x0 set_position_mid = (jmethodID) 0x0 has_array_mid = (jmethodID) 0x0 vm_channel_class = (jclass) 0x0 get_position_mid = (jmethodID) 0x0 #8 0xbfdeb7f4 in ?? () No symbol table info available. #9 0xb7daa950 in jit_asm_compile (m=0x8428e30, mptr=0x0, sp=0x0, ra=0x0) at jit.c:1700 sfi = {prev = 0xb745fc59, method = 0x8405ae8, pv = 0xbfdeb820 "ðMá·", sp = 0xb7dd6ef3 "\211ô\213\034$\213t$\004\213|$\bÉÃPèß\025üÿ\203Ä \004ëæ\203ì\020\211\004$\211L$\004\211á\203Á\024\211L$\b\213T$\020\211T $\fè\1779ýÿ\203Ä\020\205Àt\002ÿàè\031<üÿY\203é\002ë\003\203Ä\004\203ì \020\211\034$º\020", ra = 0xb7dd6ef3 "\211ô\213\034$\213t$\004\213|$\bÉÃPèß\025üÿ\203Ä \004ëæ\203ì\020\211\004$\211L$\004\211á\203Á\024\211L$\b\213T$\020\211T $\fè\1779ýÿ\203Ä\020\205Àt\002ÿàè\031<üÿY\203é\002ë\003\203Ä\004\203ì \020\211\034$º\020", xpc = 0xb7e14df0 "¼õ\v"} entrypoint = (u1 *) 0x0 pa = (u1 *) 0x809c420 "tX@\b" p = (ptrint *) 0xb745fc40 #10 0xb7da68fc in vm_call_method_vmarg (m=0x8428e30, vmargscount=0, vmargs=0x0) at vm.c:3332 o = (java_objectheader *) 0x0 #11 0xb7da6832 in vm_call_method_valist (m=0x8428e30, o=0x0, ap=0xbfdeb8d4 "øú\005\bI{Ú·\001") at vm.c:3211 vmargscount = 0 vmargs = (vm_arg *) 0x0 ro = (java_objectheader *) 0xbfdeb890 dumpsize = 0 #12 0xb7da67b5 in vm_call_method (m=0x8428e30, o=0x0) at vm.c:3170 ap = 0xbfdeb8d4 "øú\005\bI{Ú·\001" ro = (java_objectheader *) 0x8428e30 #13 0xb7d9cc1e in initialize_class_intern (c=0x80b9bb0) at initialize.c:188 m = (methodinfo *) 0x8428e30 xptr = (java_objectheader *) 0xb7dfe71b #14 0xb7d9caa5 in initialize_class (c=0x80b9bb0) at initialize.c:106 r = 3074807280 #15 0xb7da9f68 in jit_compile (m=0x8428fd0) at jit.c:1008 r = (u1 *) 0xb7d7fe9a "U\211åS\203ì$èa\231ÿÿ\201ÃJO\t" jd = (jitdata *) 0x808bf4c dumpsize = 28 __PRETTY_FUNCTION__ = "jit_compile" #16 0xb7daa8f4 in jit_asm_compile (m=0x8428fd0, mptr=0xb745f63c "¸Ð\217B\bº\roÝ·ÿâ\roÝ·8\220B\bLöE·¸8\220B\bº\roÝ·ÿâ \roÝ· \220B\bdöE·¸ \220B\bº\roÝ·ÿâ\roÝ·\b\221B\b|öE·¸\b\221B\bº\roÝ·ÿâ \roÝ·p\221B\b\224öE·¸p\221B\bº\roÝ·ÿâ\roÝ·Ø\221B\b¬öE·¸Ø\221B\bº\roÝ·ÿâ \roÝ·@\222B\bÄöE·¸@\222B\bº\roÝ·ÿâ\roÝ·¨\222B\bÜöE·¸¨\222B\bº\roÝ·ÿâ \roÝ·\020\223B\bôöE·¸\020\223B\bº\ro"..., ---Type <return> to continue, or q <return> to quit---[B sp=0xbfdeb9d0 "0v\v\b\bºÞ¿-oÝ·H\224@\b\bºÞ¿ð¹Þ¿p_\n\bónÝ·ðMá·ð»Þ¿p_ \n\bðÕE·ðMá·ð»Þ¿8ºÞ¿ühÚ·H\224@\b", ra=0xb745d636 "\211D$\004¸\001") at jit.c:1677 sfi = {prev = 0xbfdebb64, method = 0x0, pv = 0xb745d5f0 "\203ì\034\211|$\030\211t$\024\211l$\020¸èZ@\b\211\004 $¹\200ÙE·ÿÑ1ö¸0v\v\b\211\004$¸\\\211Ù·ÿÐ\205À\017\205\006", sp = 0xbfdeb9d0 "0v\v\b\bºÞ¿-oÝ·H\224@\b\bºÞ¿ð¹Þ¿p_\n\bónÝ·ðMá·ð»Þ¿p_ \n\bðÕE·ðMá·ð»Þ¿8ºÞ¿ühÚ·H\224@\b", ra = 0xb7dd6ef3 "\211ô\213\034$\213t$\004\213|$\bÉÃPèß\025üÿ\203Ä \004ëæ\203ì\020\211\004$\211L$\004\211á\203Á\024\211L$\b\213T$\020\211T $\fè\1779ýÿ\203Ä\020\205Àt\002ÿàè\031<üÿY\203é\002ë\003\203Ä\004\203ì \020\211\034$º\020", xpc = 0xb745d635 "Ñ\211D$\004¸\001"} entrypoint = (u1 *) 0x0 pa = (u1 *) 0x84098c0 "" p = (ptrint *) 0xb745d9b7 #17 0xb7dd6f2d in asm_call_jit_compiler () from /usr/local/cacao/lib/libjvm-0.98+svn.so No symbol table info available. #18 0x08428fd0 in ?? () No symbol table info available. #19 0xb745f63c in ?? () No symbol table info available. #20 0xbfdeb9d0 in ?? () No symbol table info available. #21 0xb745d636 in ?? () No symbol table info available. #22 0xb745d636 in ?? () No symbol table info available. #23 0x080b7630 in ?? () No symbol table info available. #24 0xbfdeba08 in ?? () No symbol table info available. #25 0xb7dd6f2d in asm_call_jit_compiler () from /usr/local/cacao/lib/libjvm-0.98+svn.so No symbol table info available. #26 0x08409448 in ?? () No symbol table info available. #27 0xbfdeba08 in ?? () No symbol table info available. #28 0xbfdeb9f0 in ?? () No symbol table info available. #29 0x080a5f70 in ?? () No symbol table info available. #30 0xb7dd6ef3 in L_asm_vm_call_method_copy_done () from /usr/local/cacao/lib/libjvm-0.98+svn.so No symbol table info available. #31 0xb7e14df0 in ?? () from /usr/local/cacao/lib/libjvm-0.98+svn.so No symbol table info available. #32 0xbfdebbf0 in ?? () No symbol table info available. #33 0x080a5f70 in ?? () No symbol table info available. #34 0xb745d5f0 in ?? () No symbol table info available. #35 0xb7e14df0 in ?? () from /usr/local/cacao/lib/libjvm-0.98+svn.so No symbol table info available. #36 0xbfdebbf0 in ?? () No symbol table info available. #37 0xbfdeba38 in ?? () No symbol table info available. #38 0xb7da68fc in vm_call_method_vmarg (m=0x8409448, vmargscount=0, vmargs=0x0) at vm.c:3332 o = (java_objectheader *) 0xb7e14df0 Backtrace stopped: frame did not save the PC cacao -version reports this: java version "1.5.0" CACAO version 0.98+svn Copyright (C) 1996-2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel, C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring, E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich, J. Wenninger, Institut f. Computersprachen - TU Wien This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. Configure/Build options: ./configure: '--with-classpath-libdir=/usr/local/classpath/lib' '--with-classpath-includedir=/usr/local/classpath/include/' '--with-classpath-classes=/usr/local/classpath/share/classpath/glibj.zip' '--disable-jni' CC : (4.1.2 (Ubuntu 4.1.2-0ubuntu4)) CFLAGS : -O0 -g3 -D__I386__ -D__LINUX__ -ansi -pedantic -Wall -Wno-long-long -D_POSIX_C_SOURCE=199506L -D_XOPEN_SOURCE=500 -D_XOPEN_SOURCE_EXTENDED -D_BSD_SOURCE Default variables: maximum heap size : 134217728 initial heap size : 2097152 stack size : 65536 java.boot.class.path : /usr/local/cacao/share/cacao/vm.zip:/usr/local/classpath/share/classpath/glibj.zip gnu.classpath.boot.library.path: /usr/local/classpath/lib/classpath Runtime variables: maximum heap size : 134217728 initial heap size : 2097152 stack size : 65536 libjvm.so : /usr/local/cacao/lib/libjvm java.boot.class.path : /usr/local/cacao/share/cacao/vm.zip:/usr/local/classpath/share/classpath/glibj.zip gnu.classpath.boot.library.path: /usr/local/classpath/lib/classpath java.class.path : . Please note the --disable-jni option in the call to configure. Compilation fails without it, reporting the following: jni.c:6072: error: variable '_Jv_JNIInvokeInterface' has initializer but incomplete type jni.c:6073: warning: excess elements in struct initializer jni.c:6073: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6074: warning: excess elements in struct initializer jni.c:6074: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6075: warning: excess elements in struct initializer jni.c:6075: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6077: warning: excess elements in struct initializer jni.c:6077: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6078: warning: excess elements in struct initializer jni.c:6078: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6079: warning: excess elements in struct initializer jni.c:6079: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6080: warning: excess elements in struct initializer jni.c:6080: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6082: warning: excess elements in struct initializer jni.c:6082: warning: (near initialization for '_Jv_JNIInvokeInterface') jni.c:6087: error: variable '_Jv_JNINativeInterface' has initializer but incomplete type jni.c:6088: warning: excess elements in struct initializer jni.c:6088: warning: (near initialization for '_Jv_JNINativeInterface') ... jni.c:6348: warning: excess elements in struct initializer jni.c:6348: warning: (near initialization for '_Jv_JNINativeInterface') jni.c:6352: warning: excess elements in struct initializer jni.c:6352: warning: (near initialization for '_Jv_JNINativeInterface') jni.c:6353: warning: excess elements in struct initializer jni.c:6353: warning: (near initialization for '_Jv_JNINativeInterface') jni.c:6355: warning: excess elements in struct initializer jni.c:6355: warning: (near initialization for '_Jv_JNINativeInterface') make[4]: *** [jni.lo] Error 1 make[4]: Leaving directory `/home/boll/tmp/cacao-trunk/src/native' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/boll/tmp/cacao-trunk/src/native' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/home/boll/tmp/cacao-trunk/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/boll/tmp/cacao-trunk' make: *** [all] Error 2 -- Søren O. "Oh, bother" said the Borg, "we've assimilated Pooh".