Podívám se na ld.so.conf
, zní:
include ld.so.conf.d/*.conf
Dobře, takže přejdu do zahrnutí a zobrazím tyto soubory:
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
Nyní jsou dva z těchto souborů držáky, další dva obsahují seznam pěti knihoven.
Přesto ldconfig -v
vypíše několik stránek knihoven. Je zřejmé, že v mé Fedoře jsou výchozí přiřazení cest lib, která specifikují tyto cesty hledání ne v ld.co.conf
. Například /usr/lib64
musí být někde nastaven, nemohu jej vystopovat pomocí ld.so.conf
.
Nemohl jsem identifikovat žádný Proměnná prostředí lib cesta, která nastavuje interní výchozí cestu lib.
Komentáře
Odpovědět
ldconfig
ve výchozím nastavení kromě toho zkoumá několik „důvěryhodných adresářů“ k těm, které jsou výslovně uvedeny v jeho konfiguračních souborech. Ve Fedoře na 64bitových x86 jsou to adresáře /lib
, /lib64
a odpovídající hardwarovým schopnostem (obvykle /lib/i686
, /lib/sse2
, /lib64/tls
, a /lib/sse2
).
Upozorňujeme, že ldconfig
ovlivňuje pouze chování za běhu; neovlivňuje GCC.
/etc/ld.so.conf*
obsahují pouze adresáře , které budou při vytváření souboruld.so.cache
vyhledal knihovny pomocí ldconfig (8). Nepoužívají ' gcc, ld ani dynamický linker ld.so (8) – ale druhý použije použitíld.so.cache
vytvořeného programem ldconfig.