On 05/26/2014 05:07 PM, Peter Johansson wrote:
Hm, there is nothing in my 'Makefile.in' that mentions --mode=finish. Is there any reason for that or is it a automake bug?
I investigated this a bit further. 'libtool --mode=finish' is indeed called and it calls 'ldconfig -n /usr/local/lib' but that doesn't update the cache as I want. Instead I have

$ ldconfig -p | grep yat
    libyat.so.8 (libc6,x86-64) => /usr/local/lib/libyat.so.8
    libyat.so.7 (libc6,x86-64) => /usr/local/lib/libyat.so.7
    libyat.so.6 (libc6,x86-64) => /usr/local/lib/libyat.so.6
    libyat.so.5 (libc6,x86-64) => /usr/local/lib/libyat.so.5
    libyat.so (libc6,x86-64) => /usr/local/lib/libyat.so

but I just installed libyat.so.9. If I instead call

$ sudo ldconfig /usr/local/lib
$ ldconfig -p | grep yat
    libyat.so.9 (libc6,x86-64) => /usr/local/lib/libyat.so.9
    libyat.so.8 (libc6,x86-64) => /usr/local/lib/libyat.so.8
    libyat.so.7 (libc6,x86-64) => /usr/local/lib/libyat.so.7
    libyat.so.6 (libc6,x86-64) => /usr/local/lib/libyat.so.6
    libyat.so.5 (libc6,x86-64) => /usr/local/lib/libyat.so.5
    libyat.so (libc6,x86-64) => /usr/local/lib/libyat.so

in other words, it works as I want if I call 'lconfig /usr/local/lib' but not if I call 'ldconfig -n /usr/local/lib'. What does the -n switch? The man page says:

*-n*
/Only  process  directories specified on the command line.  Don't
process the trusted directories (/lib and  /usr/lib)  nor  those
specified in /etc/ld.so.conf.  Implies -N.
/
IIUC, that means that the cache is not rebuilt because I have '/usr/local/lib' in '/etc/ld.so.conf'. Why is ldconfig called with -n? I did some digging and found that it's been like that since beginning of time, or at least since v0.6a.

Cheers,

--
Peter Johansson

_______________________________________________
https://lists.gnu.org/mailman/listinfo/libtool

Reply via email to