はじめに
ファイルが数百あるプロジェクトでは、ビルドに時間がかかります。
ビルドエラーのデバッグをしているときに、いくつかのファイルをコンパイルしたいのに、他のコンパイルに時間を取られ、作業時間が無駄にかかることがよくあると思います。
あるファイルがビルドエラーを含むか確認したいだけなら、それを最初にコンパイルすればすぐ結果がわかります が、その順番を開発者が指定することはできるのでしょうか。
コンパイルされるファイルの順番を変更する方法がある ので、以下に手順を共有したいと思います。
(.pbxprojファイルに直接に手を入れるので、動作に関しては自己責任でお願いします。)
手順
- Finderから、順番を変えたいプロジェクトの.xcodeprojファイルの右クリックメニュー「パッケージ内容を見る」を選びます。
- project.pbxprojファイルを開きます。
- PBXSourcesBuildPhaseセクションを検索して、飛びます。
- そこに登載されている「最初にビルドさせたいソースファイル」を見つけて、リストの先頭に移動させます。
以上です。あとはいつもどおりにビルドするだけです。
感想
・この方法の危険さを評価できていないので、詳しい方がいらしたらコメントいただきたいです。
・GUI的に変更できるやり方や、もっとシンプルな方法があるのでしょうか?
・仮に、1回の完全なビルドに10分かかるとします。あるソースファイルのビルド順がランダムに決まるとしたら、ビルドエラーの確認まで平均5分ほどかかります。解決までに10回かかってしまうとしたら、ビルド時間だけで50分かかる計算に。一方、最初にビルドできる場合、12秒で結果がわかると仮定すれば、10回やっても2分です。ビルド中はソースコードを変更できないので、48分間コードをいじれる時間が増えることになる、、、はず!?