Bug #12806
closedCompiling ruby 2.3.1 on HPUX 11.31 ia64 breaks in segmentation fault
Description
PROBLEM:
The https://bugs.ruby-lang.org/issues/8793 is still not resolved.
I've tried to compile ruby-2.3.1 on HP-UX B.11.31 ia64.
The compile phase gets to the phase:
echo generating encdb.h
./miniruby -I./lib -I. -I.ext/common ./tool/generic_erb.rb -c -o encdb.h ./template/encdb.h.tmpl ./enc enc
But then breaks with:
$ gmake
CC = cc
LD = ld
LDSHARED = ld -b
CFLAGS = -g
XCFLAGS = -DRUBY_EXPORT
CPPFLAGS = -I. -I.ext/include/ia64-hpux11.31 -I./include -I.
DLDFLAGS = -E -Wl,-E
SOLIBS =
linking miniruby
generating encdb.h
./tool/generic_erb.rb:2: [BUG] Segmentation fault at 0x001000
ruby 2.3.1p112 (2016-04-26 revision 54768) [ia64-hpux11.31]
-- Control frame information -----------------------------------------------
c:0003 p:---- s:0025 e:000024 CFUNC :require
c:0002 p:0008 s:0021 E:001d3c EVAL ./tool/generic_erb.rb:2 [FINISH]
c:0001 p:0000 s:0002 E:001c18 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
./tool/generic_erb.rb:2:in <main>' ./tool/generic_erb.rb:2:in
require'
-- Other runtime information -----------------------------------------------
-
Loaded script: ./tool/generic_erb.rb
-
Loaded features:
0 enumerator.so
1 thread.rb
2 rational.so
3 complex.so
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
gmake: *** [encdb.h] IOT trap (core dumped)
$ gdb miniruby core
Core was generated by `miniruby'.
Program terminated with signal 6, Aborted.
#0 0x60000000c020fb30:0 in _lwp_kill+0x30 ()
from /usr/lib/hpux32/libpthread.so.1
(gdb) bt
#0 0x60000000c020fb30:0 in _lwp_kill+0x30 ()
from /usr/lib/hpux32/libpthread.so.1
#1 0x60000000c0174ec0:0 in pthread_kill+0x9f0 ()
from /usr/lib/hpux32/libpthread.so.1
#2 0x60000000c04034e0:0 in raise+0xe0 () from /usr/lib/hpux32/libc.so.1
#3 0x60000000c05283f0:0 in abort+0x170 () from /usr/lib/hpux32/libc.so.1
#4 0x4237020:0 in die () at error.c:407
#5 0x4237350:0 in rb_bug_context (ctx=0x20000000401afa00,
fmt=0x411fe10 "Segmentation fault at %p") at error.c:437
#6 0x4466e90:0 in sigsegv (sig=11, info=0x20000000401af810,
ctx=0x20000000401afa00) at signal.c:890
#7
#8 0x4293570:1 in mark_locations_array (objspace=0x2000000040036a00,
x=0x1000, n=501218497) at gc.c:3909
#9 0x4293740:0 in gc_mark_locations (objspace=0x2000000040036a00, start=0x0,
end=0x2000000077800308) at gc.c:3922
#10 0x4294360:0 in mark_current_machine_context (objspace=0x2000000040036a00,
th=0x2000000040035dd0) at gc.c:4110
#11 0x42972b0:0 in gc_mark_roots (objspace=0x2000000040036a00, categoryp=0x0)
at gc.c:4651
#12 0x42987f0:0 in gc_marks_start (objspace=0x2000000040036a00, full_mark=0)
at gc.c:5204
#13 0x4299e40:0 in gc_marks (objspace=0x2000000040036a00, full_mark=0)
Any hints on what is causing this?
I've tried compiling both with gcc (4.7.1 and 4.6.3) and HP C/aC++ B3910B A.06.28 (the example above)