[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[platform-swt-dev] Compiling swt libs on Solaris x86_64
|
Hi There,
I'm trying to compile the swt libs on Solaris 10 for AMD64 which is a platform
not supported by SWT or Eclipse.
I've managed to modify the various build files to build 64bit Solaris x86_64
libs but when I try to use the libraries I get a SEGV from my JVM (A sun JVM
with amd64 support).
The JVM SEGV's when trying to enter: org.eclipse.swt.internal.gtk.OS.memmove()
Initially, I was compiling the whole of eclipse and actually came across this
problem when I typed ./eclipse.
Because I thought eclipse was a bit of a big beast, I created a very small SWT
application that should just bring up a
window and say "hello world" when run. The SWT application has exactly the
same problem as eclipse did.
As soon as I launch it:
java -Djava.library.path=/usr/src/swt_test SWTTest
I get a JVM SEGV and a core dump. I also got a file produced called
hs_err_pid20338.log. This file contains many things but most notably:
*********SNIP
Instructions: (pc=0xfffffd7f00402878)
0xfffffd7f00402868:
[error occurred during error reporting, step 100, id 0xb]
Stack: [0xfffffd7fffbff000,0xfffffd7fffe00000), sp=0xfffffd7fffdfe5b8, free
space=2045k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native
code)
C 0xfffffd7f00402878
j org.eclipse.swt.internal.gtk.OS.memmove([BJJ)V+0
j org.eclipse.swt.internal.Converter.wcsToMbcs(Ljava/lang/String;[CZ)[B+73
j org.eclipse.swt.internal.Converter.wcsToMbcs(Ljava/lang/String;Ljava/lang/String;Z)
[B+23
j org.eclipse.swt.widgets.Display.<clinit>()V+9
v ~StubRoutines::call_stub
V [libjvm.so+0x3eaef8]
V [libjvm.so+0x3eb178]
V [libjvm.so+0x3eb43d]
V [libjvm.so+0x435eaf]
V [libjvm.so+0x435f59]
V [libjvm.so+0x3ca260]
V [libjvm.so+0x3bb565]
V [libjvm.so+0x411d06]
j SWTTest.main([Ljava/lang/String;)V+0
v ~StubRoutines::call_stub
V [libjvm.so+0x3eaef8]
V [libjvm.so+0x3eb178]
V [libjvm.so+0x3eb43d]
V [libjvm.so+0x4cf9e4]
V [libjvm.so+0x4d8c84]
C [java+0x30f2] main+0x642
C [java+0x295c] _PROCEDURE_LINKAGE_TABLE_+0x3d4
Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.eclipse.swt.internal.gtk.OS.memmove([BJJ)V+0
j org.eclipse.swt.internal.Converter.wcsToMbcs(Ljava/lang/String;[CZ)[B+73
j org.eclipse.swt.internal.Converter.wcsToMbcs(Ljava/lang/String;Ljava/lang/String;Z)
[B+23
j org.eclipse.swt.widgets.Display.<clinit>()V+9
v ~StubRoutines::call_stub
j SWTTest.main([Ljava/lang/String;)V+0
v ~StubRoutines::call_stub
********************* /SNIP
I also did a dbx on the core file to get the native stack trace, here it is:
************ SNIP
(dbx) where
=>[1] _lwp_kill(0x1, 0x6, 0xffffffff90f4e040, 0xfffffd7fff33b9ae,
0xfffffd7fffdfd220, 0x6), at 0xfffffd7fff33b0ba
[2] _thr_kill(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff3360e9
[3] raise(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff2e4dc9
[4] abort(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff2c7d90
[5] os::abort(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ffeff41f3
[6] VMError::report_and_die(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7fff053a6a
[7] crash_handler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff053fcf
[8] __sighndlr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff337fe6
[9] call_user_handler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff32d472
[10] sigacthandler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff32d658
---- called from signal handler with signal 11 (SIGSEGV) ------
[11] os::print_hex_dump(0xfffffd7fff1d6b70, 0xfffffd7fffdfd130, 0x16,
0xfffffd7fff33b40a, 0xfffffd7fff0da663, 0xf), at 0xfffffd7ffeff3205
[12] os::print_context(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ffeff6b59
[13] VMError::report(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff052960
[14] VMError::report_and_die(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7fff0538ce
[15] JVM_handle_solaris_signal(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebe7941
[16] signalHandler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ffebe7ac0
[17] __sighndlr(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff337fe6
[18] call_user_handler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff32d472
[19] sigacthandler(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fff32d658
---- called from signal handler with signal 11 (SIGSEGV) ------
[20] 0xfffffd7f00402878(0xfffffd7fa7ee0fd8, 0x6e4950, 0x10, 0x3,
0xfffffd7fff1d03b0, 0xfffffd7fff1caa30), at 0xfffffd7f00402877
[21] Java_org_eclipse_swt_internal_gtk_OS_memmove___3BJJ(0x0, 0x0, 0x0, 0x0,
0x0, 0x0), at 0xfffffd7f7fa9c448
[22] 0xfffffd7fba80c742(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba80c741
[23] 0xfffffd7fba802efe(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba802efd
[24] 0xfffffd7fba802de1(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba802de0
[25] 0xfffffd7fba802de1(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba802de0
[26] 0xfffffd7fba80032d(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba80032c
[27] JavaCalls::call_helper(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebeaef8
[28] os::os_exception_wrapper(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebeb178
[29] JavaCalls::call(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ffebeb43d
[30] instanceKlass::call_class_initializer_impl(0x0, 0x0, 0x0, 0x0, 0x0,
0x0), at 0xfffffd7ffec35eaf
[31] instanceKlass::call_class_initializer(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffec35f59
[32] instanceKlass::initialize_impl(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebca260
[33] instanceKlass::initialize(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebbb565
[34] InterpreterRuntime::_new(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffec11d06
[35] 0xfffffd7fba8175c7(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba8175c6
[36] 0xfffffd7fba80032d(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7fba80032c
[37] JavaCalls::call_helper(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebeaef8
[38] os::os_exception_wrapper(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffebeb178
[39] JavaCalls::call(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ffebeb43d
[40] jni_invoke_static(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ffeccf9e4
[41] jni_CallStaticVoidMethod(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at
0xfffffd7ffecd8c84
[42] main(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x4030f2
[43] 0x40295c(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0x40295b
************** /SNIP
Does anyone have any idea what could be going wrong here? I'm not exactly a
serious C programmer and am mildly befuddled!
Kind Regards,
Ben Staniford
--
Ben Staniford
http://www.staniford.net