After a library has been linked with -module, it can be dlopened. Unfortunately, because of the variation in library names, your package needs to determine the correct file to dlopen.
The most straightforward and flexible implementation is to determine the name at runtime, by finding the installed .la file, and searching it for the following lines:
# The name that we can
If dlname is empty, then the library cannot be dlopened. Otherwise, it gives the dlname of the library. So, if the library was installed as /usr/local/lib/libhello.la, and the dlname was libhello.so.3, then /usr/local/lib/libhello.so.3 should be dlopened.
If your program uses this approach, then it should search the
directories listed in the
LD_LIBRARY_PATH1 environment variable, as well as
the directory where libraries will eventually be installed. Searching
this variable (or equivalent) will guarantee that your program can find
its dlopened modules, even before installation, provided you have linked
them using libtool.
on AIX, and
SHLIB_PATH on HP-UX.