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