Вы можете использовать менеджер зависимостей, как CocoaPods или VendorKit тянуть в нужной библиотеке, а также все это транзитивные зависимости - библиотеки, библиотека зависит.
Работа менеджера зависимостей для управления любыми конфликтами в транзитивных зависимостях - например, если в двух библиотеках используются разные версии SBJSON, это сработает, что делать. Все, что вам нужно сделать, это объявить библиотеку верхнего уровня, которую вы хотите в файле конфигурации, и будет работать над тем, какие под-библиотеки необходимы и вытащить их в ваш проект Xcode.
CocaoPods имеет хороший способ управления этим, потянув все библиотеки в качестве источника, а затем скомпилировать их все в одну статическую библиотеку - в отдельный проект. Затем он соединяется с вашим проектом через рабочее пространство.
VendorKit использует аналогичный подход, но использует один файл проекта.
Как CocoaPods, так и VendorKit позволяют вам легко публиковать свою библиотеку в центральном репозитории. CocaoPods позволяет вам поддерживать свою собственную или общедоступную вилку центрального репо, если хотите, то есть в качестве репозитория предприятия.
В большинстве случаев это избавит вас от неприятностей. В редких случаях ваша библиотека может зависеть от очень конкретной, более старой версии другой общей библиотеки. В этом случае вы можете использовать инструмент для переименования всех файлов header/impl в этой библиотеке, чтобы избежать коллизий.
[Изменить]: По состоянию на январь 2013 года появился новый соперник - плагин Maven Xcode.
Почему бы не использовать dinamyc библиотеку вместо этого? – LuisEspinoza
ОК, что не поддерживается – LuisEspinoza