Как перечислить общие библиотеки, используемые двоичным файлом Linux, с помощью команды ldd

Команда `ldd` (List Dynamic Dependencies) в Linux – это важный инструмент, используемый для изучения общих библиотек, требуемых исполняемым файлом или файлом общих объектов. Запустив `ldd` после имени исполняемого файла или библиотеки, пользователь может увидеть, какие динамические библиотеки необходимы и где система ожидает их найти. Эта команда помогает в устранении проблем, связанных с отсутствующими или несовместимыми библиотеками, обеспечивая правильное разрешение всех зависимостей. Она отображает полные пути к библиотекам или указывает, если таковые отсутствуют, что делает ее незаменимой утилитой для системных администраторов и разработчиков, управляющих зависимостями программного обеспечения в системах Linux.

Все приведенные здесь примеры были протестированы на Ubuntu Linux, но команда работает точно так же и в других дистрибутивах.

Команда Linux ldd

Как уже упоминалось в начале, команда ldd выводит зависимости общих объектов. Ниже приведен синтаксис команды:

ldd [option]... file...

А вот как это объясняет man-страница инструмента:

ldd prints the shared objects (shared libraries) required by each program or shared object 
specified on the command line.

Следующие примеры в стиле Q&A должны дать вам лучшее представление о том, как работает ldd.

Q1. Как использовать команду ldd?

Базовое использование ldd довольно простое – достаточно запустить команду ‘ldd’ вместе с именем исполняемого файла или файла разделяемого объекта в качестве входных данных.

ldd [object-name]

Например:

ldd test

Как использовать ldd

Вы можете видеть, что все зависимости от общих библиотек были выведены на экран.

Q2. Как заставить ldd выдавать подробную информацию в выходных данных?

Если вы хотите, чтобы ldd выдавал подробную информацию, включая данные о версиях символов, вы можете использовать опцию командной строки -v. Например, команда

ldd -v test

выводит следующие данные, когда -v использовался параметр командной строки:

Как заставить ldd выдавать подробную информацию в выходных данных

Q3. Как заставить ldd выдавать неиспользуемые прямые зависимости?

Для получения этой информации используйте -u опция командной строки. Вот пример:

ldd -u test

Как заставить ldd выдавать неиспользуемые прямые зависимости

Q4. Как заставить ldd выполнять перемещения?

Есть несколько вариантов командной строки, которые можно использовать: -d и -r. Если первый вариант указывает ldd выполнять перемещение данных, то второй заставляет ldd выполнять перемещение как для объектов данных, так и для функций. В обоих случаях инструмент сообщает о недостающих объектах ELF (если таковые имеются).

ldd -d
ldd -r

Q5. Как получить помощь по ldd?

Опция командной строки –help заставляет ldd выдавать полезную информацию об использовании инструмента.

ldd --help

Как получить справку по ldd

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *