2016-04-30 3 views
0

静的ライブラリがiOSプロジェクトから作成された場合、Lib.aファイルにはすべてのヘッダーファイルもバンドルされていますか。あるいは、プライベートヘッダとしてパブリックヘッダで使用されるすべてのヘッダファイルをマークして、スタティックライブラリターゲットがビルドされたら/ usr/local/includeフォルダ内のすべてのプライベートファイルを追加する必要がありますか?静的ライブラリのヘッダーファイルの包含と可視性iOS

答えて

1

いいえ、自動的には何も起こりません。次のように静的ライブラリのための通常のプロセスである:あなたがアプリでプロジェクトを含めると機能

  • を確認できるよう

    • は、プロジェクト内の静的ライブラリのターゲットを持ち、スクリプトの実行および集計ターゲットを作成しますiOS用に1つ、シミュレータ用に1つを作成し、実行スクリプトで.a

    • を作成するには、.aとすべての必要な.hファイルをいくつかのフォルダにコピーします作成

    このフォルダは、配布するフォルダです。ユーザーは.aにリンクし、自分のアプリケーションプロジェクトの検索パスを.aのフォルダを指すように設定します。

  • +0

    スタティックライブラリターゲットを使用した私のXcodeプロジェクトが他の多くのスタティックライブラリに依存している場合、エンドユーザがこれらのライブラリを手動で追加する必要がないように、すべてのスタティックライブラリを含むフレームワークを作成する方法を教えてください。現在、libtoolコマンドを使用して、すべての.aファイルを1つのバイナリに結合しています。これらの依存ライブラリーとそのヘッダーは、システムのどこかのプロジェクトフォルダの外にあります。依存するすべてのスタティックライブラリヘッダーをプロジェクトフォルダに含めて、プライベートヘッダーまたはプロジェクトヘッダーとしてマークする必要がありますか? –

    +0

    私はシミュレータではなく、iPhoneをサポートするためにスタティックライブラリが必要です。ですから、Universalフレームワークを作成するのにlipoコマンドを使用していません。代わりに、複数の静的ライブラリを1つのフレームワークファイルに結合する必要があります。そのためにはlibtoolコマンドを使用しています。 –

    関連する問題