@ Карта сайта News Автора!

Bog BOS: Shared library

Последние изменения:
2024.11.22: sysadmin: systemd-journald (централизованное хранение)
2024.11.11: sysadmin: Linux: пространства имён
2024.11.06: sysadmin: настройка TCP/IP в Linux: виртуальный интерфейс и виртуальный мост
2024.10.25: sysadmin: Linux VFS, атрибуты, расширенные атрибуты, ACL

Последнее изменение текста: 20010201
Скопировано с www.bog.pp.ru: 2024.11.23

Bog BOS: Shared library

PIC - position-independent code
 

Linux

/lib/ld.so (он же /lib/ld.so.1.9.5, для a.out) и /lib/ld-linux.so.2 (он же /lib/ld-2.1.3.so, для ELF) - динамический загрузчик и линкер. Все исполняемые программы (если не использовать явно "ld -static") получаются "недоделанными" и требуют связывания во время выполнения. Поиск необходимой библиотеки ведется:
  1. по списку директорий из LD_LIBRARY_PATH (если не установлен setuid/setgid)
  2. в кеше (/etc/ld.so.cache)
  3. /usr/lib
  4. /lib


/sbin/ldconfig - создает символьные ссылки и кеш (/etc/ld.so.cache) для динамического загрузчика и линкера (просматриваются директории, указанные в командной строке, в /etc/ld.so.conf, /usr/lib, /lib). Опции:


/etc/ld.so.conf - список, директорий (и еще в /usr/lib, /lib) в которых ldconfig ищет разделяемые библиотеки (почему бы не добавить туда /usr/local/lib и не запустить ldconfig)

ldd -v  (выдает список разделяемых библиотек, требуемых указанной программе)

libtool - упрощение построения разделяемых библиотек.


 
@ Карта сайта News Автора!

Bog BOS: Shared library

Последние изменения:
2024.11.22: sysadmin: systemd-journald (централизованное хранение)
2024.11.11: sysadmin: Linux: пространства имён
2024.11.06: sysadmin: настройка TCP/IP в Linux: виртуальный интерфейс и виртуальный мост
2024.10.25: sysadmin: Linux VFS, атрибуты, расширенные атрибуты, ACL



Copyright © 1996-2024 Sergey E. Bogomolov; www.bog.pp.ru