Xcode 7 In Target> BuildPhases> Связать двоичные файлы с библиотеками> нажмите + кнопку
Выбирая рамки для добавления, вы не можете найти * .dylib, вместо этого вы увидите * .tbd.
Что является причиной этого?
** Для людей, которым нужен dylib, следуйте из этого поста
- Выберите «Добавить другое»
- В окне выбора файла выполните «CMD» + Shift + G (Перейти в папку) и введите / usr / lib /
- Из / user / lib вы можете найти файлы * .dylib
Ответы:
Я искал Google, но пока могу найти только одну цитату из форумов разработчиков Apple :
Надеюсь, больше документации будет в ближайшее время.
Обновить
В качестве примера приведено все содержимое libsqlite3.tbd . Это просто текстовый файл. Обратите внимание, что имя для установки - libsqlite3.dylib .
Я нашел этот и другие файлы .tbd в
Вы также можете увидеть файл .tbd, если перейдете на вкладку «Общие» своего проекта XCode, а затем добавите библиотеку в разделе «Связанные фреймворки и библиотеки». Файл .tbd будет скопирован в ваш проект.
Таким образом, похоже, что файл .dylib - это фактическая библиотека двоичного кода, которую использует ваш проект, и он находится в каталоге / usr / lib / на устройстве пользователя. Файл .tbd, с другой стороны, является просто текстовым файлом, который включен в ваш проект и служит ссылкой на требуемый двоичный файл .dylib. Поскольку этот текстовый файл намного меньше, чем двоичная библиотека, он уменьшает размер загружаемого пакета SDK.
На данный момент я только догадываюсь на основании предоставленной информации, поэтому, пожалуйста, поправьте меня, если я ошибаюсь.
источник
.dylib - это скомпилированный двоичный файл, содержащий машинный код. .tbd - это меньший текстовый файл, похожий на карту кроссплатформенного модуля.
источник
.tbd
-Text Based dylib stubs
. Это своего рода оптимизация, которая означает, что вам не нужно копировать.dylib
файл (который существует на цели) в ваш пакет (например, приложение). Этот файл не содержит двоичного кода, который оказывает существенное влияние на размер файла.Это применимо только для:
Dynamic libraries
потому что они связаны во время выполненияstandard system libraries
.Для разработки iOS вы можете найти .tbd файлы, которые вы можете использовать здесь
Например
libiconv.tbd
выглядит такЭтот файл содержит мета-информацию, например:
.dylib
расположениеисточник