Создание приложения Mac OS X / Cocoa для распространения с импортированной платформой - PullRequest
8 голосов
/ 16 августа 2011

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

Я подумал, что это так же просто, как заархивировать его, а затем поделиться им в виде .pkg или приложения.Но всякий раз, когда я открываю приложение, оно вылетает со следующим сообщением:

Application Specific Information: 
dyld: launch, loading dependent libraries 
Dyld Error Message: 
  Symbol not found: _OBJC_CLASS_$_CPTBorderedLayer 
  Referenced from: /Users/USER/Desktop/StoreMon.app/Contents/MacOS/ 
StoreMon 
  Expected in: /Library/Frameworks/CorePlot.framework/Versions/A/ 
CorePlot 
 in /Users/USER/Desktop/StoreMon.app/Contents/MacOS/StoreMon 

Я использую Core Plot framework.

Класс _CPTBorderedLayer является частьюиз этой структуры.Как правильно упаковать этот фреймворк в мое приложение?

1 Ответ

7 голосов
/ 16 августа 2011

Вы можете предоставить установщик для используемых вами фреймворков или встроить их в комплект приложения.

Прочитайте «Руководство по программированию фреймворка». Страница 41 - это то, что вы ищете:

http://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPFrameworks/BPFrameworks.pdf

Хитрость заключается в том, чтобы скопировать файлы фреймворка в специальный каталог внутри вашего приложения. Затем вы будете использовать @executable_path для ссылки на двоичный путь вашего приложения, поэтому приложение будет правильно связано с вашей платформой во время запуска.

...