Android Studio中的ndk.dir错误

时间:2015-03-04 21:32:40

标签: java android opencv android-studio android-ndk

我试图使用opencv库,所以我在Android Studio中导入了一个项目,当我尝试运行它时出现了这个错误:

  

错误:任务执行失败':openCVSamplefacedetection:compileDebugNdk'。   NDK未配置。   从http://developer.android.com/tools/sdk/ndk/.Then下载NDK,在local.properties中添加ndk.dir = path /到/ ndk。   (在Windows上,请确保转义反斜杠,例如C:\ ndk而不是C:\ ndk)

所以我下载了ndk,然后将这行添加到local.properties文件中,它变成了:

sdk.dir=C\:\\Users\\skoon\\AppData\\Local\\Android\\sdk
ndk.dir=C\:\\Users\\skoon\\AppData\\Roaming\\IDM\\android-ndk-r10d

但我仍然遇到了这个我不理解的错误:

  

错误:任务执行失败':openCVSamplefacedetection:compileDebugNdk'。   com.android.ide.common.internal.LoggedErrorException:无法运行命令:       C:\ Users \ skoon \ AppData \ Roaming \ IDM \ android-ndk-r10d \ ndk-build.cmd NDK_PROJECT_PATH = null APP_BUILD_SCRIPT = C:\ Users \ skoon \ Downloads \ Compressed \ OpenCV-2.4.10-android-sdk \ OpenCV-2.4.10-android-sdk \ samples \ face-detection \ openCVSamplefacedetection \ build \ intermediates \ ndk \ debug \ Android.mk APP_PLATFORM = android-14 NDK_OUT = C:\ Users \ skoon \ Downloads \ Compressed \ OpenCV-2.4 .10-android-sdk \ OpenCV-2.4.10-android-sdk \ samples \ face-detection \ openCVSamplefacedetection \ build \ intermediates \ ndk \ debug \ obj NDK_LIBS_OUT = C:\ Users \ skoon \ Downloads \ Compressed \ OpenCV-2.4 .10-android-sdk \ OpenCV-2.4.10-android-sdk \ samples \ face-detection \ openCVSamplefacedetection \ build \ intermediates \ ndk \ debug \ lib APP_ABI = all   错误代码:       2   输出:       make.exe:***没有规则使目标'C:\ Users \ skoon \ Downloads \ Compressed \ OpenCV-2.4.10-android-sdk \ OpenCV-2.4.10-android-sdk \ samples \ face-detection \ openCVSamplefacedetection \编译\中间体\ NDK \调试\ OBJ /本地/ arm64-V8A / OBJ文件/ detection_based_tracker / C_ \用户\ skoon \下载\压缩\ OpenCV的-2.4.10-Android的SDK \ OpenCV的-2.4.10-android- sdk \ samples \ face-detection \ openCVSamplefacedetection \ src \ main \ jni',需要`C:\ Users \ skoon \ Downloads \ Compressed \ OpenCV-2.4.10-android-sdk \ OpenCV-2.4.10-android-sdk \样品\脸部检测\ openCVSamplefacedetection \构建\中间体\ NDK \调试\ OBJ /本地/ arm64-V8A / OBJ文件/ detection_based_tracker / C_ \ Users \用户skoon \下载\压缩\的OpenCV-2.4.10-Android的SDK \的OpenCV -2.4.10-Android的SDK \样品\脸部检测\ openCVSamplefacedetection \ SRC \主\ JNI \ DetectionBasedTracker_jni.o”。停止。

我没有更改代码中的任何内容,所以我该怎么办?我是否需要更改或添加任何变量以指向ndk?

P.S。这是我第一次尝试构建Android应用程序,因此我没有任何经验。

提前谢谢。

更新:

要导入项目,我刚从文件中使用了导入项目,然后我同步了gardle,并运行项目。 我从opencv下载的软件包是Android软件包,我尝试使用人脸检测示例。 当我运行它时,我得到了上面的错误。

3 个答案:

答案 0 :(得分:1)

您需要为项目设置OpenCV库。您可以按照here指示进行操作。

答案 1 :(得分:0)

OpenCV示例项目尚未正式支持gradle。我认为如果你开始一个新项目并将其配置为像示例一样工作会更容易。 我使用Android Studio + NDK + OpenCV实现了一个教程项目。你可以看看。 https://github.com/quanhua92/NDK_OpenCV_AndroidStudio

答案 2 :(得分:0)

在SDK管理器中安装NDK,如果您已经安装了open app的“build.gradle”替换这些行

sourceSets { main { jni.srcDirs = ['src/main/jni', 'src/main/jniLibs/', 'src/main/jni/'] } }

sourceSets.main { jniLibs.srcDir 'src/main/jniLibs' // mention your JNI lib path(where ".so" files contains) jni.srcDirs = [] //disable automatic ndk-build call }

我试图配置OpenCV及其固定的