Mă uit la ld.so.conf
, se citește:
include ld.so.conf.d/*.conf
OK, așa că merg la include și văd aceste fișiere:
bind99-x86_64.conf kernel-4.16.11-100.fc26.x86_64.conf kernel-4.11.8-300.fc26.x86_64.conf libiscsi-x86_64.conf
Acum două dintre aceste fișiere sunt deținătorii de locuri, celelalte două listează aproximativ cinci libs între ele.
Cu toate acestea, ldconfig -v
va enumera mai multe pagini de libs. Evident, există alocări implicite de căi lib în fedora mea care specifică aceste căi de căutare nu în ld.co.conf
. De exemplu, /usr/lib64
trebuie setat undeva, nu îl pot urmări prin ld.so.conf
.
Nu am putut identifica variabilă de mediu lib path care setează calea implicită lib internă.
Comentarii
Răspuns
ldconfig
privește în mod implicit câteva „directoare de încredere” , în plus la cele enumerate explicit în fișierele sale de configurare. Pe Fedora pe 64-bit x86, acestea sunt /lib
, /lib64
și corespunzător capabilităților hardware (de obicei, /lib/i686
, /lib/sse2
, /lib64/tls
, și /lib/sse2
).
Rețineți că ldconfig
afectează doar comportamentul în timpul rulării; nu afectează GCC.
/etc/ld.so.conf*
conțin numai directoare care vor fi căutat biblioteci de ldconfig (8) la construirea fișieruluild.so.cache
. Acestea ' nu sunt utilizate de gcc, ld sau linker-ul dinamic ld.so (8) – dar acesta din urmă va folosild.so.cache
creat de ldconfig.