2017-01-31 39 views
0

私はNDK(C++)とCMakeツールチェーンを使用してAndroidライブラリを作成しています。Android NDK - CMakeビルド環境変数

私が使っているCMakeのtoolchainファイルは、Android/sdk/cmakeの代わりにAndroid/sdk/ndk-bundle/build/cmakeからです。後で更新されず、推奨されないので(?)。

私は、CMakeLists.txtファイルからではなくコマンドライン呼び出しでのみ引数を設定できるという問題が発生しています。

私のコマンドラインは次のとおりです。

# Generate required build environment 
cmake -DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK/build/cmake/android.toolchain.cmake \ 
     -DANDROID_ARM_NEON=TRUE \ 

-DANDROID_NATIVE_API_LEVEL = "アンドロイド-21" cmakeの--build。私は以下のようにCMakeLists.txtでこの引数を設定している場合

しかし:その後、

set(ANDROID_NATIVE_API_LEVEL "android-21") 

それが正しく設定されていません。

したがって、CMakeツールチェーンのANDROID変数を設定するには、どのような方法が推奨され、正しい方法ですか?

答えて

1

CMakeLists.txt自体の設定がうまくいかない理由は、toolchainファイルが奇妙なものであるということです。 cmakeは本当にtoolchainファイルを設定したくないのですが、Androidの場合はそうです。

したがって、CMakeツールチェーンのANDROID変数を設定するには、どのような方法が推奨され、正しい方法ですか?

これまでと同じように、コマンドラインからStudioを使用している場合、これらはcmakeではなくgradleファイルで指定されます。

Android/sdk/cmakeの代わりにAndroid/sdk/ndk-bundle/build/cmakeのCMakeツールチェーンファイルを使用しています。後で更新されず、推奨されないので(?)。

正しい。 NDKにバンドルされているものが使用されます。