Date: Sat, 21 Sep 1996 23:17:31 +1000 From: Bruce Evans <bde@zeta.org.au> To: current@FreeBSD.org, jhay@mikom.csir.co.za Subject: Re: Some shared library problems Message-ID: <199609211317.XAA18586@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>The first problem I ran into was the libgnumalloc that gets removed and
>then reappear as a link to libfakegnumalloc in ${CHROOTDIR}/usr/lib/compat.
>Maybe there should be a "ldconfig -m /usr/lib/compat" after such a drastic
>step? I think I can get past this by setting the LD_LIBRARY_PATH envirenment
>variable. This one does not bother me too much, although I would like a
>solution to this.
The ldconfig might help for installs into "/" under -current, but there
should bes no problem for a separate rootdir.
The installation of libfakegnumalloc is currently broken (it deletes all
versions of libgnumalloc.so from ${SHLIBDIR}). I think it is supposed
to work by leaving old versions alone and putting a guaranteed-newer
version in the compat directory for future ld commands to find. It
would be cleaner but too hard to mv old versions of libgnumalloc.so
to the compar directory.
>The one that I think might bite us somewhere is libgnuregex.so.2.0 that
>now (in -current) have locale stuff in that needs libc.so.3.0 while
>the libgnuregex.so.2.0 in 2.1.5 did not have it. The result of this is
>that a program compiled with libgnuregex.so.2.0 and libc.so.2.x won't
>run with the new libgnuregex.so.2.0 installed. Where I noticed it was
>when awk was used during the compilation of usr.bin/kdump. Maybe the
>major version number of a library should be bumped if it starts to
>depend on another library? I think this counts as a major interface
>change.
Some libraries are linked to others (e.g., libg++ is linked to many
others), so normal version numbering stuff should apply. Unfortunately,
nothing is explicitly linked to libc, because libc is always there.
Your example shows that the required version of libc isn't always
there. Would always linking libraries to libc be reasonable? What
is the equivalent to ldd for libraries?
Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609211317.XAA18586>
