Subscribed unsubscribe Subscribe Subscribe

JPMartha's Pancake

This blog is the way to brush up my poor English.

Build Phases の Copy Files について調べたこと 🙋

Xcode OS X

コマンドラインツールやそこで使用するフレームワークを作成する際に Build SettingsBuild Phases の設定はある程度知っておいたほうがよいと考えて記事にしました。

この記事は Build Phases のみを対象としていますが Build SettingsMakefile の記述内容に関係します。

なお記事中で使用しているコマンドラインツール(chocolate)とフレームワーク(ChocolateKit)は前回の記事で使用したものと同じです。

フレームワーク(ChocolateKit)側

このフレームワークHimotoki.framework を使用します。

🐷 Copy Files に Himotoki.framework があるとき〜

f:id:JPMartha:20160216093722p:plain

  • Build します。

f:id:JPMartha:20160216125000p:plain

ChocolateKit.framework/Versions/A/Frameworks に Himotoki.framework がありますね。🤗

f:id:JPMartha:20160216093823p:plain

  • Clean します。

f:id:JPMartha:20160216120628p:plain

🐷 ないとき〜

f:id:JPMartha:20160216093234p:plain

  • Build します。

f:id:JPMartha:20160216125000p:plain

Himotoki.framework がありませんね。🙃

f:id:JPMartha:20160216093316p:plain

コマンドラインツール(chocolate)側

このコマンドラインツールChocolateKit.framework を使用します。

🐷 Copy Files に ChocolateKit.framework があるとき〜

f:id:JPMartha:20160216121226p:plain

  • Build します。

f:id:JPMartha:20160216100220p:plain

chocolate.app/Contents/Frameworks に ChocolateKit.framework がありますね。🤗

f:id:JPMartha:20160216095744p:plain

  • Clean します。

f:id:JPMartha:20160216103814p:plain

🐷 ないとき〜

f:id:JPMartha:20160216094402p:plain

  • Build します。

f:id:JPMartha:20160216100220p:plain

ChocolateKit.framework がありませんね。🙃

f:id:JPMartha:20160216100227p:plain

先述のとおりこれらは Build SettingsMakefile の記述内容に関係します。

余裕があれば続編を書きます。

おまけ

XcodeBuild Settings の行をコピペしたら変数名と設定内容がすぐ取れて意外と便利ですね。

  • コピー

f:id:JPMartha:20160216103052p:plain

  • ペースト
//:configuration = Debug
LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/../Frameworks

//:configuration = Release
LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/../Frameworks

//:completeSettings = some
LD_RUNPATH_SEARCH_PATHS