Subject: Re: AIX again
To: Rumi Szabolcs <firstname.lastname@example.org>
From: Michael <email@example.com>
Date: 08/30/2004 07:28:30
> The libstdc++ configure script seems to use -g3 and I suspect this
> might or might not be the reason for it to "crawl" but it writes
> continuously to the disk for a loooong time with almost zero cpu
> load so that it took more than 9 hours to compile gcc 3.3.4 on a
> powerful chirp box that has couple of gigs of memory and 10000rpm
Yep, same thing happens here ( although it's a mere 300MHz 604e for me so there is /some/ CPU load )
I've never been able to figure out what exactly it's writing on the disk - it seems to scribble on the swap partition or some /tmp file though. ( the disk activity is on the OS disk, not the disk that contains the sources... )
> As the netbsd pkgsrc bootstrap failed on AIX 5.2 (PR#26730), I tried
> to compile the usual GNU(ish) opensource packages by hand. Now this
> was a pain in the ass indeed... Of course the worst of all was the
> shared library problem. Libtool and configure scripts either do not
> handle the situation at all, or, in case of some packages, they produce
> shared .a libraries. After several days of struggle I actually gave
> up compiling my usual toolset I was able to compile within 1-2 days
> on Solaris, IRIX, HP-UX, and Tru64 already (with couple of code tweaks
> and minor script/makefile hacks here and there). I'm maybe too lame,
> but AIX is evil!
Not really - libtool and autoconf do just not support it properly and apparently get confused about shared and static libraries having the same extension ( and they make some silly assumptions ). For me it works a lot better using a hacked libtool ( compiled it from pkgsrc and then hacked /usr/pkg/bin/libtool ) that doesn't try to build .a shared libs but adds -Wl,-bdynamic -Wl,-brtl -Wl,-brtllib -Wl,-bM:SRE to the compiler/linker command line when building shared libraries so it sees .so files and uses the runtime linker. Still a pain in the ass though since most packages still require some (minor) hacking. But you're lucky with 5.2 - I'm stuck with 4.3.2 which seems to be sort of an oddball version which is even weirder.
But - wasn't AIX 5 supposed to have some sort of Linux binary ( or at least source- ) compatibility? This /might/ make some things easier...
But since you mentioned IRIX - seems to be just as weird but in a different way - defaults to n32 binaries, but some packages (like perl) insist on building n64 ones which makes compiling perl extensions a major pain, trying to build /everything/ as n64 gives problems with other packages ( like everything gecko-based for instance ) which refuse to work with anything else than n32... but at least gcc compiles in reasonable time even on a 195MHz R10k :)
> So it would be very nice to have a fully working pkgsrc on AIX as the
> AIX binary opensource repositories are lagged far behind the current
> software versions (IBM offers gcc 2.95.x and apache 1.3.x instead
> of gcc 3.x and apache 2.x for example) so that - in my opinion -
> AIX usability based on opensource is very limited, and pkgsrc
> could be the savior here, for me at least.
Well, all the server stuff like Apache, php, python and so on supports AIX properly. The rest needs hacking, but most of it works. I even got some gnome2 stuff to work lately - mainly by using .so instead of .a libraries although now some programs try to load .a files as shared objects because they somehow assume that shared libs and in .a - even when the .la file points at a .so file...