2011-08-16 7 views
8

Xcodeからコンパイルして正常に動作するアプリケーションを構築しました。今、私はそれを他の人に配布して、それを使うことができます。どのように正しく行うのですか?インポートされたフレームワークで配布するためのMac OS X/Cocoaアプリケーションのビルド

私はそれをアーカイブし、それを.pkgまたはアプリケーションとして共有するのは簡単だと思いました。私は、アプリケーションを開くたびしかし、それは次のようなメッセージでクラッシュ:私はCore Plotフレームワークを使用しています

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 

_CPTBorderedLayerクラスは、そのフレームワークの一部です。このフレームワークをアプリケーションに正しくパッケージするにはどうすればよいですか?

答えて

7

使用しているフレームワークのインストーラを提供することも、アプリケーションのバンドルに組み込むこともできます。

「フレームワークプログラミングガイド」をお読みください。 41ページは、あなたが探しているものです。

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

トリックは、あなたのアプリケーション内で、特別なディレクトリ内のフレームワークファイルをコピーすることです。次に、@executable_pathを使用してアプリケーションのバイナリパスを参照するので、アプリケーションは起動時にフレームワークに正しくリンクされます。

関連する問題