2015-02-20 3 views
0

У меня есть приложение Cocoa, которое использует OpenCV, TBB, boost и некоторые другие библиотеки, которые установлены в моей системе. Как создать пакет, в котором есть все это внутри, чтобы клиент не мог ничего устанавливать, кроме как скопировать/вставить мой пакет? На этапе строительства они ссылаются через .dylib enter image description here.Вставить библиотеки в пакет

Возможно ли это?

Где я выбираю в xCode Product \ Archive, он будет экспортировать только приложение.

+0

Дополнительная информация о. Я заменил .dylib на .a версию libboost и сделал их скопированными в [Copy Files] в разделе [Build Phases]. Файлы действительно попадают в результирующий пакет в папке Frameworks. Но приложение все еще ищет их в/opt/local/lib/libbbost ... Почему? Как сказать, чтобы проверить в папке Frameworks пакет. – Eugen

ответ

0

хорошо, после большого чтения я не мог найти легкое решение. Может быть, есть, но у меня не было больше времени на поиск.

Так что вместо этого я написал небольшое приложение на C++, которое использует утилиты otool и install_name_tool для анализа необходимых необходимых библиотек и копирования их в комплект. Здесь находится https://github.com/integral-llc/libb. Имейте в виду, что это было сделано для личного использования, но его можно легко изменить для чего-либо еще.

Он отлично работал для моего дела. Он нашел все необходимые зависимости для OpenCV, boost, TBB.

Если у вас есть лучшие инструменты или идеи для улучшения текущего, вы более чем можете сказать.

Смежные вопросы