# Building Ruby 1.8.6 on AIX 5.3L miniruby segfault

**URL:** <https://www.ruby-forum.com/t/building-ruby-1-8-6-on-aix-5-3l-miniruby-segfault/130589>\
**Category:** Ruby\
**Created:** [February 29, 2008, 4:55pm UTC](https://www.ruby-forum.com/t/building-ruby-1-8-6-on-aix-5-3l-miniruby-segfault/130589 "2008-02-29T16:55:44Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Vincent\_Legoll](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/ecd19e/32.png) [@Vincent\_Legoll](https://www.ruby-forum.com/u/Vincent_Legoll)\
**Post date:** [February 29, 2008, 4:55pm UTC](https://www.ruby-forum.com/t/building-ruby-1-8-6-on-aix-5-3l-miniruby-segfault/130589/1 "2008-02-29T16:55:44Z")

</div>

Hello,

I’m trying to get build ruby 1.8.6 on AIX 5.3L but am having problems  
(the same happens with 1.8.6p111 or cvs-stable-snapshot)

I’ve search the ML archives, tried what is explained in:  
[http://homepage.mac.com/cjgibbons/rubyonaixhowto/t1.html](http://homepage.mac.com/cjgibbons/rubyonaixhowto/t1.html)

it is still crashing…

make: \*\*\* [.rbconfig.time] Segmentation fault (core dumped)

I configure with:

-bash-2.05b$ ./configure --with-openssl-dir=/opt/freeware  
–with-zlib-dir=/opt/freeware --with-readline-dir=/opt/freeware  
–prefix=/home/build/bin/ruby --disable-ipv6

I tried variations of the above, for example, with only --prefix

I tried to include as much info as I could imagine being useful, sorry  
if  
this is too much, please ask for more…

Tell me if I’m doing something wrong.

I had no problem getting the same version built for Solaris 9,  
HPUX 11.23 and linux…

the backtrace was always in ruby\_options, called from main, see below…

I got miniruby’s command line options with “make -n”  
but the same segfault (same line) happen without command line params…

# ==================================================== compiled with -g3 -O1

-bash-2.05b$ gdb miniruby  
GNU gdb 5.0-aix43-010414  
Copyright 2000 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 “–host=powerpc-ibm-aix4.3.3.0  
–target=powerpc-ibm-aix5.1.0.0”…  
(gdb) run ./mkconfig.rb -timestamp=.rbconfig.time -install\_name=ruby  
-so\_name=ruby rbconfig.rb  
Starting program: /home/build/bin/ruby/ruby-1.8.6/miniruby ./mkconfig.rb  
-timestamp=.rbconfig.time -install\_name=ruby -so\_name=ruby rbconfig.rb

# Program received signal SIGSEGV, Segmentation fault. 0x1002d194 in ruby\_options (argc=6, argv=0x2ff226a0) at eval.c:1518 1518 PUSH\_TAG(PROT\_NONE); (gdb) bt #0 0x1002d194 in ruby\_options (argc=6, argv=0x2ff226a0) at eval.c:1518 #1 0x10000394 in main (argc=6, argv=0x2ff226a0, envp=0x2ff22ffc) at main.c:47 #2 0x100001dc in \_\_start () (gdb) l 1513 char \*_argv; 1514 { 1515 int state; 1516 1517 Init\_stack((void_)&state); 1518 PUSH\_TAG(PROT\_NONE); 1519 if ((state = EXEC\_TAG()) == 0) { 1520 ruby\_process\_options(argc, argv); 1521 } 1522 else { (gdb) info registers r0 0x0 0 r1 0x2ff22510 804398352 r2 0x2000f0e0 536932576 r3 0x2ff2254c 804398412 r4 0x2ff2270c 804398860 r5 0x2ff22ffc 804401148 r6 0xd0b2 53426 r7 0x0 0 r8 0x60050014 1610940436 r9 0x20009d94 536911252 r10 0xf0e568dc -253400868 r11 0x100b65a4 269182372 r12 0x10001684 268441220 r13 0xdeadbeef -559038737 r14 0x1 1 r15 0x2ff2270c 804398860 r16 0x2ff22714 804398868 r17 0x0 0 r18 0xdeadbeef -559038737 r19 0xdeadbeef -559038737 r20 0xdeadbeef -559038737 r21 0xdeadbeef -559038737 r22 0xdeadbeef -559038737 r23 0xdeadbeef -559038737 r24 0xdeadbeef -559038737 r25 0xdeadbeef -559038737 r26 0xdeadbeef -559038737 r27 0xdeadbeef -559038737 r28 0x2ff2270c 804398860 r29 0x1 1 r30 0x3 3 r31 0x20000b1c 536873756 pc 0x1002d194 268620180 ps 0xd0b2 53426 cr 0x22282428 573056040 lr 0x1002d144 268620100 ctr 0x0 0 xer 0x0 0

# compiled with -g3 -O2

# Program received signal SIGSEGV, Segmentation fault. ruby\_process\_options (argc=1, argv=0x2ff22704) at ruby.c:1210 1210 origargc = argc; origargv = argv; (gdb) bt #0 ruby\_process\_options (argc=1, argv=0x2ff22704) at ruby.c:1210 #1 0x100316f8 in ruby\_options (argc=0, argv=0x2ff22660) at eval.c:1525 #2 0x100316f8 in ruby\_options (argc=1, argv=0x2ff22704) at eval.c:1525 #3 0x10000394 in main (argc=0, argv=0x0, envp=0x0) at main.c:47 #4 0x100001dc in \_\_start () (gdb) l 1205 void 1206 ruby\_process\_options(argc, argv) 1207 int argc; 1208 char \*_argv; 1209 { 1210 origargc = argc; origargv = argv; 1211 1212 ruby\_script(argv[0]); /_ for the time being _/ 1213 rb\_argv0 = rb\_progname; 1214 #if defined(USE\_DLN\_A\_OUT) (gdb) f 1 #1 0x100316f8 in ruby\_options (argc=0, argv=0x2ff22660) at eval.c:1525 1525 ruby\_process\_options(argc, argv); (gdb) l 1520 int state; 1521 1522 Init\_stack((void_)&state); 1523 PUSH\_TAG(PROT\_NONE); 1524 if ((state = EXEC\_TAG()) == 0) { 1525 ruby\_process\_options(argc, argv); 1526 } 1527 else { 1528 trace\_func = 0; 1529 tracing = 0;

# $ gcc -v Using built-in specs. Target: powerpc-ibm-aix5.3.0.0 Configured with: …/gcc-4.1.1/configure --disable-nls Thread model: aix gcc version 4.1.1

---

<div class="post-metadata">

**Author:** ![Vincent\_Legoll](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/ecd19e/32.png) [@Vincent\_Legoll](https://www.ruby-forum.com/u/Vincent_Legoll)\
**Post date:** [March 3, 2008, 3:04pm UTC](https://www.ruby-forum.com/t/building-ruby-1-8-6-on-aix-5-3l-miniruby-segfault/130589/2 "2008-03-03T15:04:45Z")

</div>

Hello,

Yutaka K. wrote:

> Did you do any additional steps other than configure and make?  
> I mean, at least, I was able to compile ruby 1.8.6p111 on AIX 5.3  
> using gcc 4.2.3.

I’ll retry with a 4.2.3 compiler…

Thanks

---

<div class="post-metadata">

**Author:** ![Vincent\_Legoll](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/v/ecd19e/32.png) [@Vincent\_Legoll](https://www.ruby-forum.com/u/Vincent_Legoll)\
**Post date:** [March 2, 2008, 5:01pm UTC](https://www.ruby-forum.com/t/building-ruby-1-8-6-on-aix-5-3l-miniruby-segfault/130589/3 "2008-03-02T17:01:45Z")

</div>

Hello Vincent,

Did you do any additional steps other than configure and make?  
I mean, at least, I was able to compile ruby 1.8.6p111 on AIX 5.3  
using gcc 4.2.3.

I just issue these commands after extracting the tar ball.  
% ./configure --with-openssl-dir=/opt/freeware  
–with-zlib-dir=/opt/freeware --with-readline-dir=/opt/freeware  
–prefix=$HOME/r186p111 --disable-ipv6

% make

% make install

% ruby -v  
ruby 1.8.6 (2007-09-24 patchlevel 111) [powerpc-aix5.3.0.0]

% gcc -v  
Using built-in specs.  
Target: powerpc-ibm-aix5.3.0.0  
Configured with: …/gcc-4.2.3/configure --prefix=/home/kanemoto/gcc423  
–enable-shared --enable-threads=aix --enable-languages=c,c++  
Thread model: aix  
gcc version 4.2.3

% oslevel -s  
5300-06-03-0732

Best regards,
