スタティックライブラリィを扱う (その後)

以前に2回に渡ってiOSの開発でスタティックライブラリィの扱いについて書いた。

[Objective-C][Xcode][iOS]Xcode 4.3でスタティックリンクライブラリィを扱う (その1)
[Objective-C][Xcode][iOS]Xcode 4.3でスタティックリンクライブラリィを扱う (その2)

この時はスクリーンショットを入れながらだったので、ごちゃごちゃと長くなったが、超要約すると以下の手順でスタティックライブラリを扱うことができるはずだ。

ライブラリ側

1.公開するヘッダファイルの"Target Membership"を全て"public"に設定する(デフォルトは"project")
2.ビルドセッティング"Installation Directory"の値を環境変数"$(BUILT_PRODUCTS_DIR)"に設定する
3.ビルドセッティング"Public Headers Folder Path"の値を環境変数"$(TARGET_NAME)"に設定する

アプリケーション側

1.スタティックライブラリプロジェクトを追加する
2.TARGETの"Link Binary With Libraries"依存性に追加したプロジェクトからスタティックライブラリを追加する
3.ビルドセッティング"User Header Search Paths"の値を環境変数"$(BUILT_PRODUCTS_DIR)"に設定する
4.ビルドセッティング"Other Link Flags"にパラメタ"-ObjC"を追加する

なお、これは後で判ったことだが、Xcode4から追加された「ワークスペース」を使うことで

このようにファイルの追加によりプロジェクト(.xcodeproj)を追加することにより、フラットな構造でアプリケーションとライブラリィのプロジェクトを並列に制御できる。


この状態で先に書いたようにスタティックライブラリィを組込むことが出来るのは勿論のこと、この状態のままでスタティックライブラリ側を単独でビルドしたりテストすることもできるようになるので、凄く便利だ。

ということでXcode4.xのワークスペースは積極的に利用すべきだろう。