Xcode 4 での #ifdef DEBUG のやりかた

コードは古いバージョンと変わらずにこんな感じで。

#ifdef DEBUG
  NSLog(@"Err : %@",[err localizedFailureReason]);
#endif

プロジェクトの設定の方は、
1. プロジェクトのファイルを選択して右クリック、Open As... から Xcode project を選択

2. 2番目のカラムの TARGETS からアプリケーションを選択

3. 左から 3番目のタブ「Build Settings」を選択

4. 「GCC 4.2 - Preprocessing」の中に「Preprocessor Macros」があり、その中に「Debug」、「Distribution」、「Release」があるので「Debug」を選択

5. 「Debug」の右に出る「+」をクリックして「DEBUG」と入力

以上で設定終了です。

シミュレータでもデバイスでもプロジェクトを RUN すれば、コンソールにログが表示されます。

Release の scheme を作るにはどうするの?

上記設定で #ifdef DEBUG のデバッグはできるけど、Release にしてログを出さないようにするにはどうするの? プロジェクトに最初からある scheme は Debug になっているので、これを Release にした scheme を作れば良いのかな?


というわけで、良くわからないのだけど以下の手順でやってみた。
1. 「Product」メニューの「New Scheme...」を選択すると新しい scheme 名の入力になるので「Release」とでもして「OK」。
これで、それまで選択していた scheme のコピーが「Release」という名前で作成される。

2. 「Edit scheme...」で scheme の編集画面になるので、「Destination」を「Release」に変更して「OK」をクリックすれば設定完了。


以上で「Release」の scheme 作成終了。

scheme に「Release」を選択した状態でプロジェクトを RUN すれば、ログが表示されずにアプリが起動します。