1

静的ライブラリ (プロジェクト B) として構成された別のプロジェクトを使用する xcode プロジェクト (プロジェクト A) があります。プロジェクト A のターゲット セクションで、プロジェクト B をターゲットの依存関係として構成し、ライブラリを使用してバイナリをリンクするにスタティック ライブラリを追加します。また、ヘッダーの検索パスにプロジェクト B のパスを追加します。

プロジェクト B では、CocoaTouch のさまざまなフレームワークを多数使用しています。これらのフレームワークをプロジェクトに追加しないと、AI でこのエラーが発生しました

    Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_CABasicAnimation", referenced from

それらを追加しても問題ありません。これらのフレームワークを追加する必要がない方法はありますか? 両方のプロジェクトですべてのフレームワークを維持するのは難しい作業です。

4

1 に答える 1

1

いいえ、静的ライブラリのすべての依存関係 (フレームワークまたはその他) を満たす必要があります。

これは、静的ライブラリがオブジェクト ファイルの単純なアーカイブであるためです。したがって、それらをバイナリのオブジェクト ファイル (この場合は「プロジェクト A」) と同等であると考える必要があります。

于 2013-06-12T16:58:57.477 に答える