Project

General

Profile

Actions

Backport #3702

closed

segmentation fault while compiling 1.9.1-p430 on debian squeeze

Added by nijikon (Tomasz Pajor) over 10 years ago. Updated almost 10 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
[ruby-core:31739]

Description

=begin
gcc -shared -Wl,-soname,libruby-1.9.1.so.1.9 dln.o encoding.o array.o bignum.o class.o compar.o complex.o dir.o enum.o enumerator.o error.o eval.o load.o proc.o file.o gc.o hash.o inits.o io.o marshal.o math.o numeric.o object.o pack.o parse.o process.o random.o range.o rational.o re.o regcomp.o regenc.o regerror.o regexec.o regparse.o regsyntax.o ruby.o safe.o signal.o sprintf.o st.o strftime.o string.o struct.o time.o transcode.o util.o variable.o version.o compile.o debug.o iseq.o vm.o vm_dump.o thread.o cont.o ascii.o us_ascii.o unicode.o utf_8.o newline.o strlcpy.o strlcat.o prelude.o dmyext.o -lpthread -lrt -ldl -lcrypt -lm -o libruby-1.9.1.so.1.9.1
objcopy -w -L 'Init_*' libruby-1.9.1.so.1.9.1
./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./tool/generic_erb.rb -c -o encdb.h ./template/encdb.h.tmpl ./enc enc
/srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:1258: [BUG] Segmentation fault
ruby 1.9.1p430 (2010-08-16 revision 28998) [i486-linux]

-- control frame ----------
c:0010 p:---- s:0048 b:0048 l:000047 d:000047 CFUNC :catch
c:0009 p:0062 s:0044 b:0044 l:0007d0 d:0007d0 METHOD /srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:1258
c:0008 p:0024 s:0034 b:0034 l:000033 d:000033 METHOD /srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:1252
c:0007 p:0066 s:0029 b:0029 l:0007ec d:0024d8 BLOCK ./tool/generic_erb.rb:12
c:0006 p:0116 s:0026 b:0026 l:000025 d:000025 METHOD /srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:793
c:0005 p:---- s:0020 b:0020 l:000019 d:000019 FINISH
c:0004 p:---- s:0018 b:0018 l:000017 d:000017 CFUNC :new
c:0003 p:0069 s:0015 b:0015 l:0007ec d:0021a8 EVAL ./tool/generic_erb.rb:8
c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
c:0001 p:0000 s:0002 b:0002 l:0007ec d:0007ec TOP


-- Ruby level backtrace information-----------------------------------------
/srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:1258:in catch'
/srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:1258:in
parse_in_order'
/srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:1252:in order!'
./tool/generic_erb.rb:12:in
block in '
/srv/ruby/c/ruby1.9.1_1.9.1.p430/lib/optparse.rb:793:in initialize'
./tool/generic_erb.rb:8:in
new'
./tool/generic_erb.rb:8:in `'

-- C level backtrace information -------------------------------------------
0x816c8a0 ./miniruby(rb_vm_bugreport+0x60) [0x816c8a0]
0x8086961 ./miniruby() [0x8086961]
0x80869fa ./miniruby(rb_bug+0x3a) [0x80869fa]
0x8112a4c ./miniruby() [0x8112a4c]
0x55572410 [0x55572410]
0x8159428 ./miniruby() [0x8159428]
0x8159794 ./miniruby() [0x8159794]
0x8165934 ./miniruby() [0x8165934]
0x8160013 ./miniruby() [0x8160013]
0x81634e6 ./miniruby() [0x81634e6]
0x815c3fd ./miniruby() [0x815c3fd]
0x815cac5 ./miniruby(rb_funcall2+0x55) [0x815cac5]
0x8088060 ./miniruby(rb_obj_call_init+0x50) [0x8088060]
0x80bd98a ./miniruby(rb_class_new_instance+0x3a) [0x80bd98a]
0x8159428 ./miniruby() [0x8159428]
0x8159794 ./miniruby() [0x8159794]
0x8165934 ./miniruby() [0x8165934]
0x8160013 ./miniruby() [0x8160013]
0x81634e6 ./miniruby() [0x81634e6]
0x816375b ./miniruby(rb_iseq_eval_main+0xab) [0x816375b]
0x8088cf7 ./miniruby(ruby_exec_node+0xb7) [0x8088cf7]
0x808a2f6 ./miniruby(ruby_run_node+0x56) [0x808a2f6]
0x805cee8 ./miniruby(main+0x68) [0x805cee8]
0x55612c76 /lib/i686/cmov/libc.so.6(__libc_start_main+0xe6) [0x55612c76]
0x805cde1 ./miniruby() [0x805cde1]

[NOTE]
You may encounter a bug of Ruby interpreter. Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html

make[1]: *** [encdb.h] Aborted
make[1]: Leaving directory `/srv/ruby/c/ruby1.9.1_1.9.1.p430'
make: *** [debian/stamp-makefile-build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2


I can reproduce this at any time, ping me with patches so we can solve this.
=end


Related issues

Has duplicate Backport191 - Backport #3725: Error running make on ruby-1.9.1-p430Closedyugui (Yuki Sonoda)Actions
Actions #1

Updated by nijikon (Tomasz Pajor) over 10 years ago

=begin
Sometimes instead of getting segmentation fault I get this exception:

./miniruby -I./lib -I.ext/common -I./- -r./ext/purelib.rb ./tool/generic_erb.rb -c -o encdb.h ./template/encdb.h.tmpl ./enc enc
/srv/ruby/c/ruby1.9.1_1.9.1.430/lib/optparse.rb:1258:in catch': stack level too deep (SystemStackError)
from /srv/ruby/c/ruby1.9.1_1.9.1.430/lib/optparse.rb:1258:in
parse_in_order'
from /srv/ruby/c/ruby1.9.1_1.9.1.430/lib/optparse.rb:1252:in order!'
from ./tool/generic_erb.rb:12:in
block in '
from /srv/ruby/c/ruby1.9.1_1.9.1.430/lib/optparse.rb:793:in initialize'
from ./tool/generic_erb.rb:8:in
new'
from ./tool/generic_erb.rb:8:in <main>'
make[1]: *** [encdb.h] Error 1
make[1]: Leaving directory
/srv/ruby/c/ruby1.9.1_1.9.1.430'
make: *** [debian/stamp-makefile-build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2
=end

Actions #2

Updated by hramrach (Michal Suchanek) over 10 years ago

=begin
Does raising your stack limit help?

Thanks

Michal

=end

Actions #3

Updated by nijikon (Tomasz Pajor) over 10 years ago

=begin
I raised the stack limit from 8192 to 32768, but without any luck.
=end

Actions #4

Updated by lucas (Lucas Nussbaum) over 10 years ago

=begin
On 17/08/10 at 15:30 +0900, Tomasz Pajor wrote:

Backport #3702: segmentation fault while compiling 1.9.1-p430 on debian squeeze
http://redmine.ruby-lang.org/issues/show/3702

That's a known problem. Apparently, there is some buggy code in ruby
1.9.1 that triggers different code generation in recent GCC, causing
this segfault. In Debian, we "solved" it by upgrading to ruby 1.9.2.

  • Lucas

=end

Actions #5

Updated by mame (Yusuke Endoh) over 10 years ago

=begin
Hi,

2010/8/17 Lucas Nussbaum lucas@lucas-nussbaum.net:

That's a known problem. Apparently, there is some buggy code in ruby
1.9.1 that triggers different code generation in recent GCC, causing
this segfault. In Debian, we "solved" it by upgrading to ruby 1.9.2.

If you use 1.9.1, you may work around the problem by -O3.

$ ./configure optflags=-O3

--
Yusuke Endoh mame@tsg.ne.jp

=end

Actions #6

Updated by nijikon (Tomasz Pajor) over 10 years ago

=begin
Yes, this fixed my build issue.
=end

Actions #7

Updated by naruse (Yui NARUSE) over 10 years ago

  • Status changed from Open to Closed

=begin

=end

Actions

Also available in: Atom PDF