On Fri, 17 Jun 2005, ville.mattila / stonesoft.com wrote:

>  I tried again and now I got better errors:
>
>
> gcc main.o  libruby-static.a -lrt -lpthread -ldl -lcrypt -lm   -o miniruby
> -g -O2
> ../mkconfig.rb:38: [BUG] Bus Error
> ruby 1.8.3 (2005-06-16) [sparc-solaris2.8]
>
> make: *** [.rbconfig.time] Abort (core dumped)
>
> /usr/local/bin/gdb miniruby core
> GNU gdb 6.1
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you
> are
> welcome to change it and/or distribute copies of it under certain
> conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "sparc-sun-solaris2.8"...
> Core was generated by `./miniruby ../mkconfig.rb -timestamp=.rbconfig.time
> -install_name=ruby -so_name'.
> Program terminated with signal 6, Aborted.
> Reading symbols from /usr/lib/librt.so.1...done.
> Loaded symbols for /usr/lib/librt.so.1
> Reading symbols from /usr/lib/libpthread.so.1...done.
> Loaded symbols for /usr/lib/libpthread.so.1
         [...]
> Loaded symbols for /usr/lib/libgen.so.1
> Reading symbols from /usr/platform/SUNW,Ultra-60/lib/libc_psr.so.1...done.
> Loaded symbols for /usr/platform/SUNW,Ultra-60/lib/libc_psr.so.1
> Reading symbols from /usr/lib/libthread.so.1...done.
> Loaded symbols for /usr/lib/libthread.so.1
> #0  0xff1992f0 in __sigprocmask () from /usr/lib/libthread.so.1
> (gdb) bt
> #0  0xff1992f0 in __sigprocmask () from /usr/lib/libthread.so.1
> #1  0xff18e59c in _resetsig () from /usr/lib/libthread.so.1
> #2  0xff18dd3c in _sigon () from /usr/lib/libthread.so.1
> #3  0xff190d98 in _thrp_kill () from /usr/lib/libthread.so.1
> #4  0xff24bcf4 in raise () from /usr/lib/libc.so.1
> #5  0xff23598c in abort () from /usr/lib/libc.so.1
> #6  0x0009b6d8 in rb_bug (fmt=0xb3b08 "Bus Error") at ../error.c:214

It calls the same abort statement as mine.

> #7  0x0007b7f8 in sigbus (sig=10) at ../signal.c:437
> #8  0xff19b220 in __sighndlr () from /usr/lib/libthread.so.1
> #9  <signal handler called>
> Cannot access memory at address 0x74
>>>
>>
>

> It seems like a wrong pthread thread is exited?

I don't know about pthreads..  Is is appropriate to try the GNU 
library

http://www.gnu.org/software/pth/pth.html

so that may be picked up instead of the Sun one?  I've not studied
them at all, really.  But I've shown your case can be reproduced.
I hope that helps.
>
> - Ville
>
         Hugh