On Tue, Nov 07, 2000 at 01:30:16AM -0800, Howard Chu wrote:
> It's been a long time since I've worked on HPUX, but I recall that the shl*
> routines
> support the SHLIB_PATH environment variable, completely analogous to
> LD_LIBRARY_PATH.
> I don't see why anyone should be having a problem here. Someone with access
> to a
> machine and manpages should of course correct me if I'm misremembering.

I have access :-)

shl_load() will load libraries with their complete pathname.
shl_load()  Attaches the shared library named by path or the
            shared library name that is constructed by using
            the path part of path plus the shared library
            basename followed by the suffix .0 (e.g.
            /usr/lib/libname.0 ) ...
In order to use a dynamic search option, shl_load can be called with
the DYNAMIC_PATH option
DYNAMIC_PATH Allow the loader to
             dynamically search for
             the library specified
             by the path argument.
             The directories to be
             searched are determined
             by the +s and +b
             options of the ld
             command used when the
             program was linked.

Then, for ld:

           +b path_list   Specify a colon-separated list of directories to
                          be searched at program run-time to locate shared
                          libraries needed by the executable output file
                          that were specified with either the -l or -l:
                          option.  An argument consisting of a single colon
                          (:) indicates that ld should build the list using
                          all the directories specified by the -L option and
                          the LPATH environment variable (see the +s
                          option).
...
           +s             Indicates that at run-time, the shared library
                          loader can use the environment variable SHLIB_PATH
                          to locate shared libraries needed by the
                          executable output file that were specified with
                          either the -l or -l: option. The SHLIB_PATH
                          environment variable should be set to a colon-
                          separated list of directories. If both +s and +b
                          are used, their relative order on the command line
                          indicates which path list will be searched first
                          (see the +b option).

These options must however be supplied at link time of the executable.

So it seems to be recommendable to set the DYNAMIC_PATH option in the
shl_load() call. Then later, the application can be linked with +b and/or +s
option to specify the place where to search for the shared libraries.

Best regards,
        Lutz
-- 
Lutz Jaenicke                             [EMAIL PROTECTED]
BTU Cottbus               http://www.aet.TU-Cottbus.DE/personen/jaenicke/
Lehrstuhl Allgemeine Elektrotechnik                  Tel. +49 355 69-4129
Universitaetsplatz 3-4, D-03044 Cottbus              Fax. +49 355 69-4153
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to