dyld: Библиотека, не загруженная - Когда выполнение приложения из командной строки

Я сталкиваюсь с некоторыми трудностями при добавлении платформы к моему проекту, когда я запускаю приложение для iPhone из командной строки. Моя заключительная цель состоит в том, чтобы запустить тесты приложений от автоматизированного процесса сборки.

Когда я запускаю свое приложение от XCode:

Я добавляю "фазу разработки" Файла Копии к своей цели, и все идет прекрасное. Копия установлена на $ (BUILT_PRODUCTS_DIR) как "Полный путь"

Когда я запускаю свое приложение от терминала (использующий iphonesim проект), я получаю эту ошибку:

 dyld: Library not loaded: @rpath/OCMock.framework/Versions/A/OCMock

 UIKitApplication:indemnisation[0xb894][26380]     Referenced from: /Users/Admin/Library/Application Support/iPhone Simulator/User/Applications/CD5729B5-A674-49B2-91F6-AD398094B6F8/indemINT.app/indemINT

То, что я не понимаю, - то, что фаза разработки копии просто копирует файлы платформы в том же каталоге как приложение.

Когда я запускаю приложение из командной строки, файлы платформы уже находятся в том же каталоге. Кто-либо знает, почему это не работает?

Я также попытался добавить OCMock.framework в следующих каталогах (без успеха):

 /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/System/Library

 /Library/Frameworks

 /Users/Admin/Library/Application Support/iPhone Simulator/User/Applications/CD5729B5-A674-49B2-91F6-AD398094B6F8

Заранее спасибо, Vincent.

6
задан user142764 24 March 2010 в 09:58
поделиться

1 ответ

iPhone не поддерживает традиционные платформы Mac OS X. Хотя в iPhone используются папки с расширением «.framework», структура этих папок отличается от структуры типичных структур Mac OS X. В частности, фреймворкам iPhone разрешено использовать только статические библиотеки, тогда как типичные фреймворки Mac OS X загружаются динамически. То, что сообщение пришло от dyld, указывает на то, что вы используете общую библиотеку; однако приложения, предназначенные для iPhone, могут быть связаны только статически.

2
ответ дан 10 December 2019 в 00:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: