2016-07-29 10 views
1

私は私のコードでは、次のデバッグ文を持っている:Clion:デバッグレベルを定義する方法は?

#if (DEBUG_LEVEL > 0) 
     printf("ITER %d\n", iter); 
#endif 

私はClionのデバッガでデバッグレベルを定義できますか? CMAKEを使用する必要がありますか?

if (DEBUG_LEVEL) 
    add_definitions(-DDEBUG_LEVEL=${DEBUG_LEVEL}) 
endif() 

それは基本的にこう述べています:DEBUG_LEVEL "あなたが持っている場合は、 "

  • " cmakeの変数が定義され、コンパイラにDEBUG_LEVEL=Xプリプロセッサ定義を渡す"

  • 答えて

    1
    1. CMakeLists.txtあなたに以下を追加します。変数の目的の値(例えば-DDEBUG_LEVEL=1)をCMakeに渡します(CLIONではOptions | Build, Execution, Deployment | CMake | CMake optionsで実行できます)。

    この方法で、CMakeLists.txtを一度編集する必要がありますが、ソースコードに触れることなく実際の値を変更することができます。

    私はCMakeLists.txtに触れることなく周りをハックすることができますが、上記のアプローチはより簡単で慣れているようです。

    +0

    あなたの答えをありがとう!はい、グローバル変数はこの問題を解決できますが、あなたのソリューションは非常に望ましいです:D – spacegoing

    関連する問題