krb5 libraries and circular dependencies

Jeffrey Hutzelman jhutz at cmu.edu
Thu Jun 3 13:41:39 EDT 2010



"Henry B. Hotz" <hotz at jpl.nasa.gov> wrote:

> The example that sticks in my mind the most was
> Cyrus SASL.  The first time I built it on Solaris ldd said
> that the command line tools, and libsasl could find all
> their dependencies fine.  However libsasl couldn't
> find any of its plugins and had no mechanisms to
> offer.

I believe this is because on Solaris, the search for dependencies of a shared object loaded via dlopen() uses only the embedded path of the object being loaded, and not that of the object doing the load.  So, if the plugins depend on /usr/local/lib/libsasl.so.99 but don't have /usr/local/lib in RPATH, they won't load.

The build problem may or may not be related to the reason we patch libtool; I don't "own" sasl here and so don't know if we've seen that problem. Why libsasl doesn't warn when dlopen fails, I do not know.



More information about the krbdev mailing list