Pytania otagowane jako shared-library

2
Dlaczego i jak można uruchamiać niektóre biblioteki współdzielone, tak jakby były plikami wykonywalnymi?
Wywoływanie tego w 32-bitowych systemach Linux $ /lib/libc.so.6 a na systemach 64-bitowych to $ /lib/x86_64-linux-gnu/libc.so.6 w powłoce zapewnia wyjście takie jak to: GNU C Library stable release version 2.10.1, by Roland McGrath et al. Copyright (C) 2009 Free Software Foundation, Inc. This is free software; see the source for copying …

6
Z jakiej wersji biblioteki C korzysta mój system?
Jak mogę z całą pewnością stwierdzić, jakiej biblioteki użytkownika C używa mój system? Możliwe powody, dla których potrzebne są te informacje, to: Jest gigantyczny pakiet źródłowy, który rozważam do pobrania, który z pewnością wykona odpowiednie kontrole i wyświetli minimalną wersję biblioteki, ale wolę oszczędzić sobie potencjalnego problemu, sprawdzając najpierw, czy …



1
Dlaczego systemy Unix / Linux nie przeglądają katalogów, dopóki nie znajdą wymaganej wersji połączonej biblioteki?
Mam binarny plik wykonywalny o nazwie „alpha”, który wymaga połączonej biblioteki (libz.so.1.2.7), która jest umieszczona w /home/username/myproduct/lib/libz.so.1.2.7 Eksportuję to samo do mojej instancji terminala przed spawnem mojego binarnego pliku wykonywalnego, wykonując następujące polecenie. export LD_LIBRARY_PATH=/home/username/myproduct/lib/:$LD_LIBRARY_PATH Teraz, gdy odradzam inną aplikację „brawo”, która wymaga tej samej biblioteki, ale innej wersji, tj. …

3
Jak sprawdzić, czy biblioteka współdzielona jest zainstalowana?
Moje pytanie wynika z mojego problemu z uruchomieniem ffmpeg. Zainstalowałem ffmpeg i jest on wyświetlany jako zainstalowany: whereis ffmpeg ffmpeg: /usr/bin/ffmpeg /usr/bin/X11/ffmpeg /usr/share/ffmpeg /usr/share/man/man1/ffmpeg.1.gz Później zorientowałem się, że niektóre programy zależą od bibliotek, które nie są dostarczane z samą instalacją, więc sprawdziłem za pomocą komendy ldd, czego brakuje: # ldd …

2
W jaki sposób sam dynamiczny linker / moduł ładujący może być dynamicznie łączony, zgodnie z raportem „file”?
Rozważ zależności obiektu współdzielonego /bin/bash, które obejmują /lib64/ld-linux-x86-64.so.2(dynamiczny linker / moduł ładujący): ldd /bin/bash linux-vdso.so.1 (0x00007fffd0887000) libtinfo.so.6 => /lib/x86_64-linux-gnu/libtinfo.so.6 (0x00007f57a04e3000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f57a04de000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f57a031d000) /lib64/ld-linux-x86-64.so.2 (0x00007f57a0652000) Sprawdzanie /lib64/ld-linux-x86-64.so.2pokazuje, że jest to dowiązanie symboliczne do /lib/x86_64-linux-gnu/ld-2.28.so: ls -la /lib64/ld-linux-x86-64.so.2 lrwxrwxrwx 1 root root 32 May 1 19:24 …

2
Jak znaleźć numer wersji zainstalowanej biblioteki?
Pytanie dotyczy RedHat / CentOS. Jestem trochę zdezorientowany między pakietem a biblioteką i tym, jak przypiąć je do stałej wersji. W najnowszych wersjach libxcb występuje błąd rollover X11, który wpływa na moje programy w C. libxcb-1.5-1 nie ma tego błędu. Więc zrobiłem: # yum remove libxcb-devel # rpm -Uvh --oldpackage …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.