プロジェクトにファイルをドラッグ&ドロップして追加するとき、コピーするかどうかや、ターゲットに追加するかどうかのチェックボックスは前回の選択状態を引き継ぐという挙動でした。なってからはターゲットに追加するかどうかのチェックボックスについてのみ、追加しようとしているファイルの拡張子によって、選択状態が変化するようになりました。含まれる場合は選択が解除されているようです。ファイルが含まれているために選択状態は解除された状態でダイアログが表示されます。選択状態が解除されていることに気づかずに、そのままプロジェクトに追加してしまうと、プロジェクトには追加されるもののコンパイル対象には含まれないという状態になってしまいます。この状態は非常に危険で、ヘッダファイルは参照できるためにコンパイル時に警告は出ないし、Objective−Cの場合はたいていリンクもできてしまいます。例のJSONKitのような標準クラスをカテゴリで拡張するようなライブラリだとまずビルド時に問題は起こりません。コンパイルされないのでオブジェクトができませんから実行時にエラーになりますが、この「プロジェクトに追加されているけれどターゲットに含まれていない」という状態は分かりにくいので問題の解決が遅れることも多々あります。いうわけで、けっこう何も考えずにリターンを押しがちなところだと思いますが、少し注意する必要があるという話でした。今ダウンロード中なのでアップデートが済んだら検証します。ファイル追加するたびに神経使うのもアレなので、要望としてバグレポートですね。xcode4.3にソースファイルをドラッグアンドドロップしてビルドしたら、そんなシンボル無いと叱られた。filesをしたら直った。ドラッグアンドドロップだとTagertのBuildPhases->CompileSourcesに登録されないようです。4.3からターゲットのチェックが外れてることがよくあって、たいていそのせいですね。そのターゲットに追加もれはすごくわかりにくくて、依存関係が解決していればビルドは成功するので、実行した段階で必要なクラスやメソッドが無くてクラッシュということになるので下手すると気づかずにリリースすることも。@kacchi0516なるほど、Xcode4.3でプロジェクトにファイルをドラッグ&ドロップで追加するとき、.mだけだったらターゲットにチェックが付いて、.hが含まれていると(.hと.mのセットでも)チェックが外れると。いやホントいらん親切ですよ。悲劇が起こる気がします。月別アーカイブはてなブログをはじめよう!KishikawaKatsumiさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。