
Я знаю, что такой инструмент существует, но не могу вспомнить поисковые запросы в Google.
Я ищу инструмент, который берет двоичный файл на Linux с динамическими библиотечными зависимостями и оболочками, а затем с помощью chroot помещает его в локальную копию среды, чтобы я мог скопировать этот каталог на новую машину, и все динамические библиотеки будут находиться в этом каталоге, а двоичный файл сможет их найти.
Какой инструмент мне нужен?
решение1
Вероятно, вы ищетеСтатификатор(http://statifier.sourceforge.net) иГорностай(http://www.magicermine.com).
Statifier — это свободное программное обеспечение, тогда как Ermine — проприетарное.
Если вы хотите использовать его только в том дистрибутиве, в котором вы создали файл, вы также можете взглянуть на AppImageKit (http://www.portablelinuxapps.org)
решение2
Инструмент, который покажет вам «все» зависимости, называется 'ldd'. Я не знаю ничего, что объединяло бы ldd и упаковщик.
Почему все в кавычках? Потому что ldd показывает вам зависимости при запуске. Он показывает те, которые были удовлетворены путем проверки двоичного файла, чтобы увидеть, какие из них жестко закодированы в двоичном файле как необходимые библиотеки. Но двоичный файл всегда может запросить другие библиотеки во время работы.
Кроме того, двоичный файл может вызывать файлы конфигурации, которые скомпилированы в определенных известных местах. Ldd ничего не может сделать для вас здесь.
Вероятно, вам нужно что-то вроде strace, чтобы видеть каждый файл, к которому обращается ваше приложение, а не только динамическую строку.