From: Bil Kleb Date: 2004-09-02T23:04:21+09:00 Subject: Update: Compilation fails for Altix (IA64) Bil Kleb wrote: > > FWIW, I received the following data from the NASA sysadm folks: > > Here is an update on building ruby. > > One of our sysadms [..] and I tried a few > experiments on building Ruby on our Altix machines. > We tried different combinations > of (1) two versions of OS, one with SGI ProPack2.4, > the other with SGI ProPack3.0, (2) different versions of > c compilers, gcc.2.96, gcc.3.2.3, gcc.3.3.1 and Intel ecc 7.0.27, > (3) two versions of Ruby, 1.8.1 and 1.8.2-preview. > Unfortunately, none of them succeeded. Their latest experiments: With the great help from my colleague, we are able to build ruby. Here are the steps we took on [the Altix] using ruby-1.8.1: (1) modify ext/Setup and uncomment out the first line #option nodynamic (2) % limit stacksize unlimited (3) setenv CC /opt/intel/comp/7.1.027/compiler70/ia64/bin/ecc (4) ./configure (5) make We tried using gcc, but it did not work. But our Fortran dependency code fails due to a lack of available stack levels. The following little bit demonstrates the behavior: % cat > helloLevel.rb def helloLevel level puts "hello world! "+level.to_s helloLevel(level+1) end helloLevel 0 [Ctrl-D] % /path/to/ruby-1.8.1/ruby ./helloLevel.rb hello world! 0 hello world! 1 [snip...] hello world! 43 hello world! 44 helloLevel.rb:4:in `helloLevel': stack level too deep (SystemStackError) from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' ... 33 levels... from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:4:in `helloLevel' from helloLevel.rb:7 My x86 linux box can get to a recursion level of 3886 before stopping. Thanks, -- Bil Kleb, Hampton, Virginia