From: John Carter Date: 2003-06-27T06:42:08+09:00 Subject: Re: RPM for 1.8.0 - uninitialized constant CONFIG bt #0 0x400a0481 in kill () from /lib/i686/libc.so.6 #1 0x400a0215 in raise () from /lib/i686/libc.so.6 #2 0x400a176b in abort () from /lib/i686/libc.so.6 #3 0x080d5a6e in rb_bug (fmt=0x0) at error.c:191 #4 0x0805a771 in module_setup (module=1076033948, n=0x4022fa78) at eval.c:3675 #5 0x08059a96 in rb_eval (self=1075685964, n=0x0) at eval.c:3600 Which flags? Well that was interesting. If I tried with my standard see everything in the stack frame flags -g -O0, the problem went away! So I put the old flags back one by one and found the old vomit-frame-point, (sorry that should be -fomit), was the culprit. Sounds to me like an uninitialised variable somewhere. (Anybody have a Valgrind suppressions file for ruby-1.8.0?) Since it has -fomit-frame-pointer, in I'm not sure how helpful the backtrace really is. Going up to frame #4... frame 4 #4 0x0805a771 in module_setup (module=1076033948, n=0x4022fa78) at eval.c:3675 3675 result = rb_eval(ruby_cbase, node->nd_next); p *node $3 = {flags = 84940863, nd_file = 0x8161919 "./rbconfig.rb", u1 = {node = 0x0, id = 0, value = 0, cfunc = 0, tbl = 0x0}, u2 = {node = 0x0, id = 0, argc = 0, value = 0}, u3 = { node = 0x40233dd0, id = 1076051408, state = 1076051408, entry = 0x40233dd0, cnt = 1076051408, value = 1076051408}} (gdb) p n $6 = (NODE *) 0x4022fa78 (gdb) p *n $7 = {flags = 2787391, nd_file = 0x8161919 "./rbconfig.rb", u1 = {node = 0x401aebf4, id = 1075506164, value = 1075506164, cfunc = 0x401aebf4, tbl = 0x401aebf4}, u2 = { node = 0x4022fa8c, id = 1076034188, argc = 1076034188, value = 1076034188}, u3 = {node = 0x0, id = 0, state = 0, entry = 0x0, cnt = 0, value = 0}} On Thu, 26 Jun 2003 nobu.nokada@softhome.net wrote: > Hi, > > At Thu, 26 Jun 2003 15:34:51 +0900, > John Carter wrote: > > Sorry, thats all there is. There is no stack trace. Nothing more than that > > is printed out. > > Try > > $ gdb ../miniruby > gdb> run -I.. mkmf.rb > > and "bt" after SEGV. > > BTW, what CFLAGS do you compile with? > > -- > Nobu Nakada > John Carter Phone : (64)(3) 358 6639 Tait Electronics Fax : (64)(3) 359 4632 PO Box 1645 Christchurch Email : john.carter@tait.co.nz New Zealand A Million Monkeys can inflict worse things than just Shakespeare on your system.