The reasons to choose this way:
*) It is possible to dlopen() with or without a version number:
- dlopen("libNAME.so(shr.o)", RTLD_MEMBER), besides the preferred
- dlopen("libNAME.so.1(shr.o)", RTLD_MEMBER), and even
- dlopen("libNAME.so.1.2.3(shr.o)", RTLD_MEMBER) does work.
Does dlopen("libNAME.so", RTLD_GLOBAL|RTLD_NOW) (for example) without
RTLD_MEMBER work?
RTLD_MEMBER is only needed for loading an archive library. As it implies,
it also requires the name of the member you want to load. .so is the format
of one of those members, so it's not required in this case.
There are cases where I have found this useful though. AIX has to a small
degree adopted the lib64 convention, but not well enough to be useful. So
with one library I built, I combined both into the same .a file, including
its dlopen'd libs. So it would be nice to have Libtool support for this
too.
However, it seems that for all of the requested functionality, it may be
necessary to have an AIX-specific libtool script and maybe even an
AIX-specific LTDL.
_______________________________________________
http://lists.gnu.org/mailman/listinfo/libtool