Ответ 1
К сожалению, в OS X нет способа связать платформу с утилитой командной строки, и я подозреваю, что фреймворк, на который вы ссылаетесь, ожидает, что он будет упакован в каталог пакетов приложения Frameworks/. Если у вас есть доступ к исходному коду фреймворка, вы можете скомпилировать статическую библиотеку и статически связать ее с вашим приложением (или напрямую включить источник в целевой объект приложения). Если у вас нет исходного кода или вы по какой-то причине не хотите статически связывать библиотеку, есть два оставшихся варианта:
-
Если у вас есть доступ к общесистемной папке /Library/Frameworks, вы можете установить стороннюю платформу там. Для этого необходимо, чтобы путь установки платформы (параметр сборки
INSTALL_PATH
) был установлен на/Library/Frameworks
во время сборки или чтобы вы использовалиinstall_name_tool
для изменения пути установки платформы на/Library/Frameworks
(если у вас нет исходного кода платформы код). -
Создайте комплект приложений (как если бы вы создавали приложение с графическим интерфейсом) с помощью утилиты командной строки в качестве исполняемого файла комплекта приложений (т.е. В AppBundle.app/Contents/MacOS/). Затем вы можете скопировать сторонний фреймворк в каталог фреймворков пакета приложений. Затем вы можете поместить пакет приложения в любое место и создать символическую ссылку на утилиту командной строки.
Вариант 1, безусловно, является более приемлемым подходом, но я использовал вариант 2, когда была веская причина.
Вы можете найти больше информации о сборке, компоновке и установке фреймворков в Руководстве по программированию Apple Frameworks.