5

私は周りを見回しましたが、私が見つけた答えのほとんどは不完全であるか、不完全であると感じ、少し混乱しました. XCode 4.3 を使用してスタティック ライブラリにコンパイルし、別の iOS アプリ プロジェクトで使用する必要がある C ライブラリを受け取りましたが、どのように進めればよいかわかりません。ディレクトリ構造が重要かどうかはわかりませんが、とにかくここにあります:

Library -> Section1 -> src -> .c files
                    -> sec1 -> .h files
                    -> sec1.h 
        -> Section2 -> src -> .c files
                    -> sec2 -> .h files
                    -> sec2.h

私はこれから作業しようとしています: http://blog.stormyprods.com/2008/11/using-static-libraries-with-iphone-sdk.htmlからのものですが、これに似た質問にリンクされていました2008年はかなり時代遅れで、動作させることもできませんでした。この質問もあります: Xcode を使用して外部 C ライブラリを含めることですが、実際にライブラリを生成する詳細については説明しません。その後、別のプロジェクトに含めます。

誰かが明確で最新の回答を提供できれば、私と他の多くの人はそれを非常に感謝しています. さらに情報が必要な場合はお知らせください。

4

2 に答える 2

7

静的ライブラリを構築するには:

  1. Xcode で静的ライブラリ プロジェクトを作成する
  2. すべての .c および .h ファイルをプロジェクトに追加します
  3. コンパイル

このライブラリを使用する最も簡単な方法は、この静的ライブラリ プロジェクトをアプリケーション プロジェクトに追加することです。これにより、ファット ライブラリ (つまり、シミュレータとデバイスの両方のコードを含むライブラリ) の作成について心配する必要がなくなります。

静的ライブラリ プロジェクトをアプリケーション プロジェクトに追加するには:

  1. [ファイル] > [ファイルを ""... に追加] を選択します。
  2. 静的ライブラリの .xcodeproj を追加します
  3. Project Navigator でアプリの .xcodeproj をクリックして、ビルド オプションを表示します。
  4. アプリのターゲットをクリックし、[ビルド フェーズ] タブを選択します。
  5. 「バイナリセクションとのリンク」を展開します
  6. 「+」ボタンをクリックします
  7. 「ワークスペース」セクションを展開します (ライブラリ、.a ファイルが表示されます)。
  8. ライブラリをクリックすると、準備完了です。

上記の非常に詳細なレベルで申し訳ありませんが、どういうわけか、人々は常に手順 4 ~ 8 を実行するのを忘れているようで、なぜリンク エラーが発生するのか不思議に思っています。

Xcode は、ライブラリのヘッダーを見つけることができません。他のヘッダー ファイルと同じようにパブリック ヘッダーをプロジェクトに追加するか、ビルド設定で「ヘッダー検索パス」を設定できます。

于 2012-07-25T18:42:23.887 に答える
0

github ( https://github.com/kstenerud/iOS-Universal-Framework/ ) で見られるように、Universal Framework プロジェクトを試してください。私はこれを広範囲に使用しましたが、うまく機能します。そのライブラリ用に新しい XCode プロジェクトを作成し、すべてのソース ファイルとヘッダー ファイルを配置するだけで、静的フレームワークが構築されます。他のプロジェクトで使用でき、ヘッダーの検索パスについて心配する必要もありません。

于 2012-07-25T18:46:54.630 に答える