It should work with ./configure --with-gc=boehm.
We'll have a look at this. Sometime, when we're feeling adventorous.
I actually had set mono-2.2 to be the one where we would do this, but it seems that quite a few changes have been made to the included garbage collector, among them some that enabled Mono.WebBrowser to work. For reference, below is the backtrace I got when running the test-application included with gluezilla. It works with the included garbage collector. This bug will probably have to wait till mono gets their own garbage collector included. It should be Real Soon Now (tm). mono --debug test.exe /usr/share/themes/Clearlooks/gtk-2.0/gtkrc:47: Invalid symbolic color 'bg_color' /usr/share/themes/Clearlooks/gtk-2.0/gtkrc:47: error: invalid identifier `bg_color', expected valid identifier Stacktrace: Native stacktrace: /usr/lib/libmono.so.0 [0x2b686d22ed7d] /usr/lib/libmono.so.0 [0x2b686d26229d] /lib/libpthread.so.0 [0x2b686d654950] /usr/lib/libgc.so.1(GC_gcj_malloc+0x73) [0x2b686e0bba13] [0x407ec799] Debug info from gdb: [Thread debugging using libthread_db enabled] [New Thread 0x2b686eb9dd30 (LWP 4804)] [New Thread 0x41490950 (LWP 4813)] [New Thread 0x4128f950 (LWP 4810)] [New Thread 0x40a00950 (LWP 4809)] [New Thread 0x406ce950 (LWP 4808)] [New Thread 0x4108e950 (LWP 4807)] [New Thread 0x40d00950 (LWP 4806)] [New Thread 0x407ff950 (LWP 4805)] 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 Current language: auto; currently asm 8 Thread 0x407ff950 (LWP 4805) 0x00002b686d6540d1 in nanosleep () from /lib/libpthread.so.0 7 Thread 0x40d00950 (LWP 4806) 0x00002b686d652bc1 in sem_wait () from /lib/libpthread.so.0 6 Thread 0x4108e950 (LWP 4807) 0x00002b686d6537cb in read () from /lib/libpthread.so.0 5 Thread 0x406ce950 (LWP 4808) 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 4 Thread 0x40a00950 (LWP 4809) 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 3 Thread 0x4128f950 (LWP 4810) 0x00002b686d927296 in *__GI___poll (fds=0x4128ec70, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 2 Thread 0x41490950 (LWP 4813) 0x00002b686d650ffd in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 1 Thread 0x2b686eb9dd30 (LWP 4804) 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 Thread 8 (Thread 0x407ff950 (LWP 4805)): #0 0x00002b686d6540d1 in nanosleep () from /lib/libpthread.so.0 #1 0x00002b686d326062 in collection_thread (unused=<value optimized out>) at collection.c:34 #2 0x00002b686d64d037 in start_thread (arg=<value optimized out>) at pthread_create.c:297 #3 0x00002b686d92fa9d in clone () from /lib/libc.so.6 #4 0x0000000000000000 in ?? () Thread 7 (Thread 0x40d00950 (LWP 4806)): #0 0x00002b686d652bc1 in sem_wait () from /lib/libpthread.so.0 #1 0x00002b686d2b21bc in finalizer_thread (unused=<value optimized out>) at gc.c:928 #2 0x00002b686d2d2dc3 in start_wrapper (data=<value optimized out>) at threads.c:620 #3 0x00002b686d33f92b in thread_start_routine (args=0x244b1c8) at threads.c:279 #4 0x00002b686e0bc2df in GC_inner_start_routine (sb=<value optimized out>, arg=<value optimized out>) at pthread_support.c:1073 #5 0x00002b686e0b6665 in GC_call_with_stack_base (fn=0, arg=0x80) at misc.c:1165 #6 0x00002b686d64d037 in start_thread (arg=<value optimized out>) at pthread_create.c:297 #7 0x00002b686d92fa9d in clone () from /lib/libc.so.6 #8 0x0000000000000000 in ?? () Thread 6 (Thread 0x4108e950 (LWP 4807)): #0 0x00002b686d6537cb in read () from /lib/libpthread.so.0 #1 0x00002b686d22ef0c in mono_handle_native_sigsegv (signal=<value optimized out>, ctx=<value optimized out>) at mini-exceptions.c:1434 #2 0x00002b686d26229d in mono_arch_handle_altstack_exception (sigctx=0x2aaab7118c40, fault_addr=<value optimized out>, stack_ovf=0) at exceptions-amd64.c:892 #3 <signal handler called> Backtrace stopped: previous frame inner to this frame (corrupt stack?) Thread 5 (Thread 0x406ce950 (LWP 4808)): #0 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00002aaab3f0c994 in PR_WaitCondVar (cvar=0x2d2f4b0, timeout=4294967295) at mozilla/nsprpub/pr/src/pthreads/ptsynch.c:405 #2 0x00002aaab4ae56f8 in nsSSLThread::Run (this=0x2d2f3b0) at nsSSLThread.cpp:964 #3 0x00002aaab3f124f3 in _pt_root (arg=<value optimized out>) at mozilla/nsprpub/pr/src/pthreads/ptthread.c:221 #4 0x00002b686d64d037 in start_thread (arg=<value optimized out>) at pthread_create.c:297 #5 0x00002b686d92fa9d in clone () from /lib/libc.so.6 #6 0x0000000000000000 in ?? () Thread 4 (Thread 0x40a00950 (LWP 4809)): #0 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00002aaab3f0c994 in PR_WaitCondVar (cvar=0x2d2f910, timeout=4294967295) at mozilla/nsprpub/pr/src/pthreads/ptsynch.c:405 #2 0x00002aaab4ae65a6 in nsCertVerificationThread::Run (this=0x2d2f7d0) at nsCertVerificationThread.cpp:138 #3 0x00002aaab3f124f3 in _pt_root (arg=<value optimized out>) at mozilla/nsprpub/pr/src/pthreads/ptthread.c:221 #4 0x00002b686d64d037 in start_thread (arg=<value optimized out>) at pthread_create.c:297 #5 0x00002b686d92fa9d in clone () from /lib/libc.so.6 #6 0x0000000000000000 in ?? () Thread 3 (Thread 0x4128f950 (LWP 4810)): #0 0x00002b686d927296 in *__GI___poll (fds=0x4128ec70, nfds=1, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00002aaab3f0e537 in _pr_poll_with_poll (pds=0x2d317e8, npds=1, timeout=4294967295) at mozilla/nsprpub/pr/src/pthreads/ptio.c:3916 #2 0x00002aaab45aa048 in nsSocketTransportService::Poll (this=<value optimized out>, wait=<value optimized out>, interval=0x4128ef0c) at nsSocketTransportService2.cpp:349 #3 0x00002aaab45aa4ee in nsSocketTransportService::DoPollIteration (this=0x2d30e30, wait=1) at nsSocketTransportService2.cpp:644 #4 0x00002aaab45aa761 in nsSocketTransportService::OnProcessNextEvent (this=0x2d30e30, thread=0x2d31d70, mayWait=<value optimized out>, depth=<value optimized out>) at nsSocketTransportService2.cpp:523 #5 0x00002aaab4c88b6d in nsThread::ProcessNextEvent (this=0x2d31d70, mayWait=1, result=0x4128efcc) at nsThread.cpp:497 #6 0x00002aaab4c5e77a in NS_ProcessNextEvent_P (thread=0x4128ec70, mayWait=1) at nsThreadUtils.cpp:227 #7 0x00002aaab45aa23e in nsSocketTransportService::Run (this=0x2d30e30) at nsSocketTransportService2.cpp:565 #8 0x00002aaab4c88bc2 in nsThread::ProcessNextEvent (this=0x2d31d70, mayWait=1, result=0x4128f07c) at nsThread.cpp:510 #9 0x00002aaab4c5e77a in NS_ProcessNextEvent_P (thread=0x4128ec70, mayWait=1) at nsThreadUtils.cpp:227 #10 0x00002aaab4c8923e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:253 #11 0x00002aaab3f124f3 in _pt_root (arg=<value optimized out>) at mozilla/nsprpub/pr/src/pthreads/ptthread.c:221 #12 0x00002b686d64d037 in start_thread (arg=<value optimized out>) at pthread_create.c:297 #13 0x00002b686d92fa9d in clone () from /lib/libc.so.6 #14 0x0000000000000000 in ?? () Thread 2 (Thread 0x41490950 (LWP 4813)): #0 0x00002b686d650ffd in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00002aaab3f0bd41 in pt_TimedWait (cv=0x2c9ebe8, ml=0x2c9eb30, timeout=0) at mozilla/nsprpub/pr/src/pthreads/ptsynch.c:280 #2 0x00002aaab3f0c91a in PR_WaitCondVar (cvar=0x2c9ebe0, timeout=5000) at mozilla/nsprpub/pr/src/pthreads/ptsynch.c:407 #3 0x00002aaab4c8b2ee in TimerThread::Run (this=0x2c9ea50) at TimerThread.cpp:345 #4 0x00002aaab4c88bc2 in nsThread::ProcessNextEvent (this=0x2eb6b90, mayWait=1, result=0xffffffffffffff92) at nsThread.cpp:510 #5 0x00002aaab4c5e77a in NS_ProcessNextEvent_P (thread=0x2c9ebec, mayWait=1) at nsThreadUtils.cpp:227 #6 0x00002aaab4c8923e in nsThread::ThreadFunc (arg=<value optimized out>) at nsThread.cpp:253 #7 0x00002aaab3f124f3 in _pt_root (arg=<value optimized out>) at mozilla/nsprpub/pr/src/pthreads/ptthread.c:221 #8 0x00002b686d64d037 in start_thread (arg=<value optimized out>) at pthread_create.c:297 #9 0x00002b686d92fa9d in clone () from /lib/libc.so.6 #10 0x0000000000000000 in ?? () Current language: auto; currently c Thread 1 (Thread 0x2b686eb9dd30 (LWP 4804)): #0 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 #1 0x00002b686ddd054c in g_async_queue_pop_intern_unlocked (queue=0x2c21c50, try=0, end_time=0x0) at gasyncqueue.c:358 #2 0x00002b686ddd0902 in IA__g_async_queue_pop (queue=0x2c21c50) at gasyncqueue.c:398 #3 0x00002aaab37ae1df in Widget::BeginInvoke (this=0x2c8a200, params=0x2c836e0) at Widget.cpp:55 #4 0x00002aaab37b0e37 in gluezilla_createBrowserWindow (events=0x2c81280, hwnd=0x3800017, width=100, height=100, startDir=<value optimized out>, dataDir=<value optimized out>, platform=Winforms) at gluezilla.cpp:77 #5 0x00000000404cc451 in ?? () #6 0x0000000000000001 in ?? () #7 0x00000000404cc414 in ?? () #8 0x0000000000000064 in ?? () #9 0x0000000002c847c0 in ?? () #10 0x0000000002c847c0 in ?? () #11 0x0000000002c8a5e0 in ?? () #12 0x0000000003800017 in ?? () #13 0x0000000003800017 in ?? () #14 0x0000000002c81280 in ?? () #15 0x00000000023cd620 in ?? () #16 0x00002b686eb9dd00 in ?? () #17 0x00002b686eb9dd00 in ?? () #18 0x0000000002883ab0 in ?? () #19 0x0000000002498d80 in ?? () #20 0x00007fff3db54040 in ?? () #21 0x00007fff3db53fa0 in ?? () #22 0x0000000002883ab0 in ?? () #23 0x0000000000000000 in ?? () Current language: auto; currently asm #0 0x00002b686d650d79 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0 ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. =================================================================
+*mono-2.10.1 (27 Feb 2011) + + 27 Feb 2011; Pacho Ramos <pacho@gentoo.org> +mono-2.10.1.ebuild, + +files/mono-2.10.1-libdir.patch: + Version bump to 2.10, build against system boehm (bug #252547 by Diego Elio + Pettenò), drop some no longer needed changes at src_install. +
Looks to make banshee to crash a lot: Native stacktrace: banshee-1() [0x48c911] banshee-1() [0x415c1f] /lib/libpthread.so.0() [0x360280f010] /usr/lib64/libgc.so.1(GC_gcj_malloc+0x78) [0x361b61e158] banshee-1(mono_object_new_alloc_specific+0x24) [0x58a594] banshee-1(mono_object_new_specific+0x88) [0x58ae98] banshee-1() [0x55e30d] banshee-1(mono_thread_attach+0x10c) [0x56049c] banshee-1(mono_jit_thread_attach+0x40) [0x417940] [0x7f421a81d31c]
As talked with upstream, they discourage to try to use system boehm at current time
(In reply to Pacho Ramos from comment #5) > As talked with upstream, they discourage to try to use system boehm at > current time still the case