On Jun 21, 2006, at 7:16 AM, Justin Johnson wrote:

> Hello,
>
> I'm having a difficult time building Ruby on AIX 5.3.  I'm installing
> it on a separate file system (/svn) to avoid the need for root access.
> First I uncompress the following prebuilt binaries to /svn.  I
> downloaded these binaries from http://aixpdslib.seas.ucla.edu/.

I've noticed pdslib is not so hot as it once was. I've had much better
success using the RPM packages that IBM provides with their AIX  
Toolbox for Linux:

http://www-03.ibm.com/servers/aix/products/aixos/linux/download.html

Granted, some of the packages are not as new as the ones below, but  
they work.

>
> autoconf.2.59.tar.Z
> gcc.4.1.0.tar.Z
> libtool.1.5.22.tar.Z
> m4.1.4.4.tar.Z
> make.3.80.tar.Z
> zlib.1.2.3.tar.Z
>
> Note that I didn't install binutils (ld and company) because it was
> causing some problems for some of the other packages I am building.
> So I'm using the version of ld that comes with the OS.

You shouldn't need it. The linker that ships with AIX is the one you  
want.

>
> Then I attempt to build Ruby, first unzipping and configuring it with
> the following commands.
>
> cd $build_dir
> gunzip $src_dir/ruby-1.8.4.tar.gz
> tar xvf $src_dir/ruby-1.8.4.tar
> cd ruby-1.8.4
> ./configure --prefix=/svn
>

> This completes successfully.  Then I run make, which ends with an  
> error.
>
> svnadm /svn/build/ruby-1.8.4>make
> gcc -g -O2  -DRUBY_EXPORT  -I. -I.  -c array.c
>

[snip]

> As an attempt to get around this error I tried making ruby.imp and
> then running make again.  This got me a little further.
>

You are heading down the same path that I took a couple of months  
ago. There
is a missing dependency in the Makefile for ruby.imp when building on  
AIX. There
is a patch for it, but 'make ruby.imp' is a simple work-around that  
accomplishes
the same thing.

> svnadm /svn/build/ruby-1.8.4>make ruby.imp
> svnadm /svn/build/ruby-1.8.4>make

[snip]

> compiling dl
> make[1]: Entering directory `/svn/build/ruby-1.8.4/ext/dl'
> Generating callback.func
> /svn/lib/ruby/1.8/powerpc-aix5.3.0.0/etc.so: [BUG] Segmentation fault
> ruby 1.8.4 (2005-12-24) [powerpc-aix5.3.0.0]
>
> make[1]: *** [callback.func] IOT/Abort trap (core dumped)
> make[1]: *** Deleting file `callback.func'
> make[1]: Leaving directory `/svn/build/ruby-1.8.4/ext/dl'
> make: *** [all] Error 1
> svnadm /svn/build/ruby-1.8.4>

Try removing your entire /svn/lib/ruby directory or moving it out of  
the way as it appears the 'dl' extension
is referencing an old library in that directory (or a library from a  
previous build). I've seen this myself
and removing my prior install allowed it to compile.

> Does anyone know how to get around these problems, or what the
> problems are to begin with?

I had the same problems you were experiencing and once I got it  
working I figured I better write it down:

http://homepage.mac.com/cjgibbons/rubyonaixhowto/t1.html

Hope it helps, if it doesn't let me know.

Christopher Gibbons