Как правильно встраивать сторонние фреймворки в мое приложение Какао? - PullRequest
2 голосов
/ 05 апреля 2010

Я пишу приложение Cocoa, использующее инфраструктуру ParseKit (http://www.parsekit.com/).. Я включил платформу в соответствующую папку, добавил фазу сборки Copy Files и добавил ее на фазу сборки. могу собрать и запустить приложение на моем Mac.

Однако, когда я пытаюсь запустить его на другом Mac, происходит сбой. Консоль показывает следующее сообщение об ошибке:

dyld: Library not loaded: /Users/Jordan/Files/ParseKit/build/Debug/ParseKit.framework/Versions/A/ParseKit

Похоже, когда приложение запускается, оно ищет фреймворк на моем локальном диске. Однако инфраструктура находится на этапе сборки Copy Files, поэтому она была скопирована в папку Contents / Frameworks этого приложения. Если бы приложение просматривало эту папку, оно могло бы нормально загрузить фреймворк, но по какой-то причине оно ищет его на моем локальном диске на исходном Mac (которого, очевидно, не существует на другом Mac).

Что я делаю не так?

Ответы [ 2 ]

2 голосов
/ 05 апреля 2010

Используйте <a href="http://developer.apple.com/Mac/library/documentation/Darwin/Reference/ManPages/man1/install_name_tool.1.html" rel="nofollow noreferrer">install_name_tool</a>, чтобы изменить путь установки фреймворка на «@loader_path /../ Frameworks / обработ.

1 голос
/ 06 апреля 2010

Поскольку это звучит так, как будто вы собираете его из исходного кода, установите путь установки в его проекте XCode. Вы должны отправить патч оригинальным разработчикам, как только он заработает (частично для того, чтобы вам было легче следить за будущими обновлениями фреймворка).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...