使用导入的框架构建Mac OS X / Cocoa应用程序以进行分发

时间:2011-08-16 07:05:54

标签: xcode cocoa macos core-plot

所以我构建了一个从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框架。

_CPTBorderedLayer类是该框架的一部分。如何正确地将此框架打包到我的应用程序中?

1 个答案:

答案 0 :(得分:7)

您可以为正在使用的框架提供安装程序,也可以将它们嵌入到应用程序包中。

阅读“框架编程指南”。 Page 41正是您所寻找的:

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

诀窍是将框架文件复制到应用程序内的特殊目录中。然后,您将使用@executable_path来引用应用程序的二进制路径,因此应用程序将在启动时正确链接到您的框架。