【问题标题】:How to add cpufeatures to android jni cmake gradle build?如何将 cpufeatures 添加到 android jni cmake gradle build?
【发布时间】:2017-01-09 18:26:58
【问题描述】:

如果我有一个应用程序的 build.gradle:

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 块。

【问题讨论】:

    标签: android android-ndk cmake android-gradle-plugin build.gradle


    【解决方案1】:

    您是否必须专门将此添加到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 中定义。

    【讨论】:

      猜你喜欢
      • 2015-12-15
      • 2019-09-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-05
      • 2013-07-21
      • 1970-01-01
      相关资源
      最近更新 更多