ldconfig(8)

НАЗВАНИЕ
ldconfig - настраивает привязку динамических ссылок

СИНТАКСИС
ldconfig [ПАРАМЕТРЫ...]

ОПИСАНИЕ
ldconfig создает необходимые ссылки и кэш (для использования диспетчером реального времени ld.so) для наиболее часто используемых разделенных библиотек, найденных в каталогах, указанных в командной строке, а также указанных в файле /etc/ld.so.conf и в системных каталогах (/usr/lib и /lib). ldconfig проверяет заголовки и названия файлов в найденных библиотеках при определении необходимости обновления ссылок в некоторых версиях. ldconfig игнорирует символьные ссылки при поиске в библиотеках.

ldconfig будет пытаться отслеживать связи, тип библиотек, основанных на ELF (то есть libc 5.x или libc 6.x (glibc)) с другими библиотеками, хотя при создании динамических библиотек правильнее явно организовывать связь с libc (используя -lc). ldconfig может сохранять несколько библиотек типа ABI в едином кэше на архитектурах, которые позволяют одновременный запуск и работу нескольких ABI, таких как ia32/ia64/x86_64 или sparc32/sparc64.

Некоторые существующие библиотеки не содержат достаточно информации для определения их типа, хотя формат файла /etc/ld.so.conf позволяет определить ожидаемый тип. Это только те библиотеки ELF, с которыми мы не умеем работать. Форматом для них будет строка типа "dirname=TYPE", где type может быть libc4, libc5 или libc6. (Этот синтаксис также работает из командной строки). Пробелы не разрешены. Также смотрите параметр -p.

Названия каталогов, содержащих = считаются недействительными, пока не определен их тип.

ldconfig обычно должен запускаться суперпользователем, так как могут понадобиться права на запись в некоторые каталоги и файлы, владельцем которых является root. Если вы используете параметр -r для перехода в root-каталог, вам не обязательны права суперпользователя, если у вас будут права на запись в этом дереве каталогов.

ПАРАМЕТРЫ

-v --verbose
    Режим вывода подробной информации. Выводит номер текущей версии, название каждого каталога при сканировании и все созданные ссылки.

-n  Обрабатывать только каталоги, указанные в командной строке. Не обрабатывать ни системые каталоги (/usr/lib и /lib), ни каталоги, указанные в /etc/ld.so.conf. Включает использование параметра -N.

-N  Не пересобирать кэш. Пока не указано -X - все связи обновляются.

-X  Не обновлять связи. Пока не указано -N кэш пересобирается.

-f conf
    Использовать conf вместо /etc/ld.so.conf.

-C cache
    Использовать файл cache вместо /etc/ld.so.cache.

-r root
    Стать root и перейти в каталог root.

-l  Режим библиотек. Вручную связывать разные библиотеки. Только для опытных профессионалов!

-p --print-cache
    Печатает список каталогов и предположительных библиотек, сохраненных сейчас в кэше.

-c --format=FORMAT
    Использовать FORMAT для кэш-файла. Значениями могут быть old, new и compat (по умолчанию).

-? --help --usage
    Выдать информацию об использовании программы.

-V --version
    Выдать информацию о версии и закончить работу.

ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ
    # /sbin/ldconfig -v
установит корректные связи для разделяемых бинарных файлов и пересоберет кэш.
    # /sbin/ldconfig -n /lib
как root после установки новых разделяемых библиотек корректно обновит их символьные ссылки в /lib.

ФАЙЛЫ
/lib/ld-linux.so.*
    загрузчик/привязчик времени исполнения
/etc/ld.so.conf
    файл, содержащий список каталогов, разделенных двоеточиями, запятыми, пробелами, символами табуляции, новой строки, в которых надо искать библиотеки.
/etc/ld.so.cache
    файл, содержащий упорядоченный список библиотек, найденных в каталогах, указанных в /etc/ld.so.conf. формат этого файла плохо читаем и не предназначается для редактирования вручную.
lib*.so.version
    разделяемые библиотеки

СМ. ТАКЖЕ
ldd(1), ld.so(8).

НАЙДЕННЫЕ ОШИБКИ

ldconfig, будучи процессом пользователя, должно быть запущено вручную и не имеет механизма динамического определения и переназначения разделяемых библиотек, используемых ld.so, при установке новых разделяемых библиотек.

АВТОРЫ
Andreas Jaeger. Документация создана David Engel и Mitch D'Souza.