[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

The AIX saga continues

From: Daniel Sands
Subject: The AIX saga continues
Date: Fri, 15 Feb 2008 16:54:24 -0700
User-agent: Thunderbird (X11/20080131)

I've been hacking libtool to make it work fully on AIX, and ran across another issue while running the checks: #24 of the new tests fails. This is because it hardcodes rpaths into the libraries but does not build old libraries. Apparently check 24 depends on libtool adding the appropriate -R's into the .la file. This only happens if 'test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes' evaluates true. On AIX, hardcode_into_libs=yes and build_old_libs=no.

This is fine for AIX since it uses the runpath of loaded libs to load their dependencies. It only becomes a problem if a library of the same name is already loaded in the same "domain" and it is not the one you wanted. A simple example of this would be to create libfoo.a in one directory, create libfoo.a in another directory with dependence on the first libfoo.a, and then link the second libfoo into main. So main -> d2/libfoo.a -> d1/libfoo.a. This will fail to run because it won't load d1/libfoo.a with d2/libfoo.a in memory and so it won't resolve d1's export.

Since I wouldn't advise the above scenario (and extra runpath entries wouldn't help this anyway), I'd suggest that test 24 should be modified to run only under the conditions where '-R's should be expected in the .la files.

Now to find out why test 25 seems to hang forever....

reply via email to

[Prev in Thread] Current Thread [Next in Thread]