3

私が得ているエラー:

in /Users/robert/Documents/funWithFrameworks/build/Debug-iphonesimulator/funWithFrameworks.framework/funWithFrameworks, can't link with a main executable

クリフノート:

  • フレームワークを含めようとしています
  • リンクしたくない

詳細:モバイルデバイス用に開発しています...ヒント、 Xcodeを使用したヒント、および別のアプリケーションから含めることができる独自のカスタムフレームワークを作成しようとしています。これまでのところ、私は次のことを行いました。

  1. 新しいプロジェクトを作成します。iPhoneOSウィンドウベースのアプリ。
  2. ターゲット情報に移動->パッケージ化の下で、ラッパー拡張機能をアプリからフレームワークに変更します
  3. [アクション]->[新しいビルドフェーズ]->[ヘッダーのコピー]に移動します。ヘッダーの役割を「public」に変更します
  4. アプリケーションから、フレームワークをフレームワークグループに追加します。
4

4 に答える 4

5

Appleは、携帯電話でダイナミックライブラリを使用することはできないと明確に述べています。そして、プライベートフレームワークはまさに​​これです。

ただし、静的ライブラリを使用することはできます。

于 2008-09-17T10:04:35.753 に答える
1

Egil さん、これは通常、プラグイン アーキテクチャやその他のフレームワークを (部分的に) 禁止している iPhone 開発者契約のセクション 3.3.2 の影響の 1 つと考えられています。彼らが iPhone 互換フレームワーク用の Xcode プロジェクト テンプレートを提供していないという事実は、この考えを補強する傾向がありますが、もちろん、それは単なる見落としか、実際に禁止することなく落胆させるものである可能性があります.

これがそのセクションの意図した意味であるかどうかは、Apple に問い合わせる必要があり、場合によっては弁護士に相談する必要がありますが、よく言われる「フレームワークなし」のアイデアはここから生まれます。

フレームワーク コードを iPhone アプリで使用したい場合は、フレームワーク コードを使用して静的ライブラリを構築するという別の方法があります。その後、実行時に動的にロードされるのではなく、アプリケーションにコンパイルされます。それがアプリケーションの実行可能ファイルの一部であるという事実は、契約のこの部分に関する潜在的な懸念を回避します。

于 2008-12-20T22:11:33.410 に答える
1

動的ライブラリは許可されていませんが、(静的ライブラリと lipo を使用して) フレームワークを作成できます。

チェックアウト: http://accu.org/index.php/journals/1594

于 2010-05-21T03:58:42.990 に答える
0

いわゆるモバイル デバイスでは試していませんが、通常の Cocoa アプリケーションの方法と非常によく似ていると思います。このチュートリアルをチェックしてください:

組み込みの Cocoa フレームワーク

于 2008-09-17T01:54:37.240 に答える