2016-12-22 6 views
1

これが重複しているとお詫び申し上げますが、どのようにプリプロセッサ定義を定義するのですか?私はVisual StudioでC++ - > Preprocessorに行き、そこで定義のリストを設定することができます。しかし、私はAndroidのgradleビルドでそれで苦労しています。私は、次の条件Gradleでプリプロセッサ定義を設定するには

#if (!defined(NDEBUG)) && (!defined(DEBUG)) 

を満たすように、DEBUGを定義する必要があり

私は-DDEBUGを追加しようとしたが、それは動作していないようでした。私は何をする必要があるのか​​についての文書を見つけるのに苦労しました。

cppFlags.addAll(["-fexceptions", "-std=gnu++11", "-DDEBUG"]) 

は、ここに私のNDKビルドブロック です// NDKは NDK { moduleNameの "のmymodule" あなたは両方CFlagscppFlagsセットを持っているように見えます

 toolchain = "clang" 

     // If switching to GNU, here are the values to replace with 
     stl "gnustl_shared" 
     cppFlags.addAll(["-fexceptions", "-std=gnu++11", "-DDEBUG"]) 


     // when adding system library dependencies, they are added here 
     ldLibs.addAll(["log","atomic"]) 

     // C include directories 
     CFlags.addAll(["-I${file("src/main/jni/folder1")}".toString(), 
         "-I${file("src/main/jni/folder2")}".toString() 
     ]) 

     // C++ include directories 
     cppFlags.addAll(["-I${file("src/main/jni/morestuff")}".toString(), 
     ]) 
    } 

答えて

2

を構築定義されています。 DEBUGフラグを正しいものに追加していることを確認していますか?共有ライブラリを扱っている場合は、cppFlagsではなく、CFlagsにフラグが必要な場合があります。

私はCFlagsにあなたのDEBUGフラグを追加してみてください、それが動作するかどうかを確認します:迅速な対応のための

CFlags.addAll(["-DDEBUG"]) 
+0

おかげで、それは私が間違ってやっていたまさにです! –

関連する問題