【问题标题】:Android NDK broken includesAndroid NDK 损坏包括
【发布时间】:2016-07-31 12:33:51
【问题描述】:

我正在尝试将 GStreamer 包含到我的 jni 文件夹中。但是所有的依赖都被打破了。例如

#include <glib.h>

应该换成

#include <../../../include/glib-2.0/glib.h>

我正在使用 gradle-experimental 0.7.2

我的应用 build.gradle:

apply plugin: 'com.android.model.application'

model {

android {
    compileSdkVersion = 24
    buildToolsVersion = "24.0.1"

    defaultConfig.with {
        applicationId = "com.sizyntsev.cpplearning"
        minSdkVersion.apiLevel = 16
        targetSdkVersion.apiLevel = 23
    }

}

android.buildTypes {
    release {
        minifyEnabled = false
        proguardFiles.add(file("proguard-rules.pro"))
    }
}

android.ndk{
    moduleName "gstreamer"
    cppFlags.add("-I ${new File("src/main/jni/gstreamer_lib/include/glib-2.0/glib.h").absolutePath}".toString())
}

}

dependencies {
    compile 'com.android.support:appcompat-v7:24.1.0'
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

【问题讨论】:

    标签: android android-ndk android-gradle-plugin


    【解决方案1】:
    cppFlags.add("-I ${new File("src/main/jni/gstreamer_lib/include/glib-2.0/glib.h").absolutePath}".toString())
    

    您应该传递目录的路径,而不是文件本身的路径。您还可以检查生成的中间Android.mk。看看build/intermediates/ndk

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-20
      • 2012-04-11
      • 1970-01-01
      • 2012-07-05
      • 2013-02-28
      • 2012-06-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多