NAZWA¶
ld.so/ld-linux.so - dynamiczny konsolidator/ładowacz
OPIS¶
Uwaga! To tłumaczenie może być nieaktualne!
ld.so ładuje biblioteki dzielone wymagane przez program,
przygotowuje program do uruchomienia i uruchamia go.
O ile podczas kompilacji nie podano jawnie opcji
-static, wszystkie
binaria linuksowe będą niekompletne i będą wymagały
dalszego konsolidowania podczas działania.
Potrzebne biblioteki dzielone są szukane w następującej
kolejności:
- o
- Przy użyciu zmiennej środowiskowej
LD_LIBRARY_PATH (LD_AOUT_LIBRARY_PATH dla programów
a.out). Poza binariami suid/sgid, dla których jest to
ignorowane.
- o
- Z pliku buforowego /etc/ld.so.cache który
zawiera skompilowaną listę kandydatów, znalezionych w
ścieżce bibliotek.
- o
- W domyślnym katalogu /usr/lib, a potem w
/lib.
ŚRODOWISKO¶
- LD_LIBRARY_PATH
- Oddzielona dwukropkami lista katalogów, w których
szukać bibliotek ELF podczas wykonywania. Podobne do zmiennej
środowiskowej PATH.
- LD_PRELOAD
- Oddzielona spacjami lista dodatkowych, podanych przez
użytkownika bibliotek dzielonych ELF, którą należy
załadować przed wszystkimi innmi. Umożliwia to
wybiórczą zamianę funkcji w innych bibliotekach dzielonych.
Dla plików binarnych ELF z ustawionym bitem setuid/setgid,
ładowane będą tylko biblioteki ze standardowych
katalogów, mające także ustawiony bit setgid.
- LD_TRACE_LOADED_OBJECTS
- Gdy zmienna ta jest obecna, sprawia, że program
wypisze swoje zależności od bibliotek dynamicznych, tak jakby
był uruchomiany przez ldd, a nie normalnie.
- LD_BIND_NOW
- Gdy zmienna ta jest obecna, sprawia, że dynamiczny
konsolidator rozwiąże wszystkie symbole podczas startu programu,
a nie wtedy gdy będzie do nich pierwsze odniesienie.
- LD_AOUT_LIBRARY_PATH
- Oddzielona dwukropkami lista katalogów, w których
szukać bibliotek a.out podczas wykonywania. Podobne do zmiennej
środowiskowej PATH.
- LD_AOUT_PRELOAD
- Nazwa dodatkowej, podanej przez użytkownika biblioteki
dzielonej a.out, którą należy załadować po
wszystkich innych. Może to być uzywane do przeciążania
funkcji innych bibliotek dzielonych.
- LD_NOWARN
- Powstrzymaj ostrzeżenia o bibliotekach a.out o
niekompatybilnych numerach minorowych wersji.
- LD_KEEPDIR
- Nie ignoruj katalogu w nazwach ładowanych bibliotek
a.out. Używanie tej opcji nie jest zalecane.
PLIKI¶
- /lib/ld.so
- Dynamiczny konsolidator/ładowacz a.out
- /lib/ld-linux.so.*
- Dynamiczny konsolidator/ładowacz ELF
- /etc/ld.so.cache
- Plik zawierający skompilowaną listę
katalogów, w których należy szukać bibliotek oraz
uporządkowaną listę bibliotek kandydujących.
- /etc/ld.so.preload
- Plik zawierający oddzieloną spacjami listę
bibliotek dzielonych ELF, które mają być załadowane
przed programem.
- lib*.so*
- Biblioteki dzielone
ZOBACZ TAKŻE¶
ldd(1),
ldconfig(8).
BŁĘDY¶
Obecnie,
ld.so nie ma narzędzi do usuwania i szukania kompatybilnych
lub nowszych wersji bibliotek.
Możliwości
ld.so dostępne są tylko dla binariów,
skompilowanych przy użyciu libc w wersji 4.4.3 lub wyższej.
AUTORZY¶
David Engel, Eric Youngdale, Peter MacDonald, Hongjiu Lu, Linus Torvalds, Lars
Wirzenius i Mitch D'Souza (niekoniecznie w tej kolejności).
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu
Tłumaczenia Manuali i
może nie być aktualne. W razie
zauważenia różnic między powyższym opisem a
rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o
zapoznanie się z oryginalną (angielską) wersją strony
podręcznika za pomocą polecenia:
- man --locale=C 8 ld.so
Prosimy o pomoc w aktualizacji stron man - więcej informacji można
znaleźć pod adresem
http://sourceforge.net/projects/manpages-pl/.