2017-01-09 78 views
2

如果我有一个应用程序的build.gradle:如何将cpufeatures添加到android jni cmake gradle build?

android { 
    compileSdkVersion 24 
    buildToolsVersion "25.0.2" 
    defaultConfig { 
     applicationId "com.ndkcmaketest.headwayent.ndkcmaketest" 
     minSdkVersion 19 
     targetSdkVersion 24 
     versionCode 1 
     versionName "1.0" 
     testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 

     externalNativeBuild { 

      cmake { 
       cppFlags "-frtti -fexceptions" 
       arguments "-DANDROID_ARM_NEON=TRUE", "-DANDROID_TOOLCHAIN=gcc"//, "-DANDROID_ALLOW_UNDEFINED_SYMBOLS=TRUE" 

      } 
     } 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 



    externalNativeBuild { 
     cmake { 
      path "CMakeLists.txt" 
     } 
    } 
} 

如何添加cpufeatures为LDLIBS?在externalNativeBuild中添加ldLibs.addAll([“cpufeatures”])不起作用。既不加入ndk块。

回答

6

您是否需要将其添加到build.gradle?如果没有,添加以下到您的CMakeLists.txt文件之一:

include(AndroidNdkModules) 
android_ndk_import_module_cpufeatures() 

然后你可以target_link_libraries(<your target>, cpufeatures)。 该宏和其他几个定义在$ANDROID_SDK/cmake/<cmake-version>/share/cmake-<version>/Modules/AndroidNdkModules.cmake

相关问题