opencv — C ++ Упаковка: поиск зависимостей от общей библиотеки

Я создал приложение на C ++, которое связано со сторонними общими библиотеками, такими как opencv. Теперь мне потребуется упаковать это приложение и распространить его как tar-файлы среди пользователей, не имея при этом возможности устанавливать и компилировать сторонние зависимости. Компиляция библиотек, таких как opencv, в linux / Ubuntu — такой болезненный процесс.

Теперь я хочу выяснить, какие именно модули библиотеки связаны с исполняемым файлом, и включить их в дистрибутив tar. Я не хочу включать всю библиотеку, так как размер файла tar будет взорван.

Достаточно ли будет просто включить библиотеки, обнаруженные ldd команда? Любое руководство или подсказка / отправная точка будут полезны

0

Решение

По определению «ldd — выводить зависимости общего объекта». Кроме того, я лично подтверждаю, что это работает, поскольку я всегда использую это в профессиональных проектах.

Также вы можете проверить тот же вопрос и ответы здесь.
https://unix.stackexchange.com/questions/120015/how-to-find-out-the-dynamic-libraries-executables-loads-when-run

1

Другие решения

ldd Команда может использоваться, чтобы показать, с какими библиотеками связан исполняемый файл (или библиотека).

1

Я советую, что это работает для меня (после добавления всех зависимостей с помощью ldd), чтобы установить новый linux в virtualBox и попробовать дистрибутив tar, поскольку я был бы конечным пользователем. Таким образом, вы можете проверить, что все в порядке.

1
По вопросам рекламы [email protected]