2011-10-21 18 views
23

アプリ用に2つのターゲット(ライトバージョンとプロバージョン)が設定されており、それぞれのコードの微妙な違いを統合したい(たとえば、プロバージョンではiAdバナーは表示されません)。Xcode 4でプリプロセッサマクロを定義する方法を教えてください。

私は周りを見てきました。これを行う最も簡単な方法は、プリプロセッサマクロを使用することです。私が直面している問題は、Xcode 4でそれらを設定する方法です。もう1つのターゲットで&の 'LITE_VERSION'という1つのターゲットに 'PRO_VERSION'というマクロを設定します。

#ifdef PRO_VERSION 
    // Hide ad banners 
#else 
    // Show ad banners 
#endif 
+0

ここでチェック: http://stackoverflow.com/questions/5272296/how-to-add-preprocessor-define-globally-for-debug-configuration-in-xcode-4 – Carter

+0

これは微妙に異なっています私が後にしているものに - ありがとう。 –

答えて

40

変更する必要があるビルド設定は「プリプロセッサマクロ」と呼ばれ、プロジェクト設定ペインの[ビルド設定]タブ(検索ボックスを使用して検索)で見つけることができます。 [Project Settings]ペインの左側で各ターゲットを順に選択し、[Preprocessor Macros]設定を変更します。

設定は、 'foo'または 'foo = bar'という形式のプリプロセッサマクロのスペース区切りリストとして指定されます。

+0

ご協力ありがとうございます。デバッグ、リリース、またはその両方に追加する必要がありますか? –

+0

両方。デバッグおよびリリース構成で正しくコンパイルするには、プロバージョンとライトバージョンが必要です。 –

+1

ちょうど明確にする。 'Pro'ターゲットを選択し、デバッグとリリースの両方のプリプロセッサマクロ設定に 'PRO_VERSION'を追加します。 「ライト」ターゲットのために何もする必要はありません。 –

3

私は現時点では私のMacではないので、私は完全なステップバイステップの指示を与えることはできませんが、私:以下

は、私はそれらを使用する方法の例です私がそうでないほど詳細でない場合、これは正確であるべきだと考えてください。新しいビルドターゲットを作成します。この新しいターゲットの設定画面に移動します。コンパイルオプションの行に沿ってタブがあります。このタブには他のコンパイラフラグの行があるはずです。そこに、 -DPRO_VERSIONを入れてください。

関連する問題