私の現在のXcode iOSプロジェクトではいくつかの静的ライブラリが使用されています。静的ライブラリのさまざまなコードモジュールには、さまざまなレベルのデバッグがあり、そのモジュール内で#defineを使用してオン/オフを切り替えることができます。サブプロジェクトのXcode環境変数
私がしたいことは、すべてのデバッグのデフォルトをオフにしてから、親プロジェクトからデバッグレベルを設定することです。私はこれをやりたいので、libを使うプロジエクトは明示的にデバッグをオンにしなければなりません。
したがって、MainProjはmyLib1とmyLib2などを使用します。myLib1内にはfooModuleというモジュールがあります。私はライブラリがビルド時に、それをピックアップし、適切にコンパイルするので、親プロジェクトでFOOMODULE_DEBUG_LEVELを定義できるようにしたい
#if FOOMODULE_DEBUG_LEVEL > 0
//debug code, console logs etc
#endif
:fooModuleは、次のようなデバッグコードを持っています。
私が試した:私は、サブプロジェクトによってピックアップされたどちらも1の値を持つユーザ定義の環境変数としてFOOMODULE_DEBUG_LEVELを追加しようとしている.PCH メインプロジェクトで
#define FOOMODULE_DEBUG_LEVEL 1
lib。
これを行う方法はありますか、これを間違った方法で近づけていますか?
こんにちはMattiasさん、プリプロセッサマクロを追加しても、メインプロジェクトに含まれているサブプロジェクト(静的なライブラリ)のビルドには影響していないようです。 – tomj
これは静的ライブラリでは表示されません。理由が何であるか教えていただけますか? – applefreak
あなたは静的ライブラリを構築していますか、またはすでにビルドされた静的ライブラリとリンクしていますか? -Dマクロはコンパイル時にのみ使用されます。 –