为opencv nonfree模块构建ndk时出错

时间:2016-06-18 15:03:29

标签: android opencv ndk-build

我一直试图构建opencv非自由库一段时间, 当调用ndk-build函数时,它会以此错误中止

Android NDK: ERROR:jni/Android.mk:opencv_java: LOCAL_SRC_FILES points to a missing file
Android NDK: Check that /03-Projects//WorkSpace//OpenCV-2.4.11-android-sdk//OpenCV-android-sdk//sdk//native//jni//../libs/armeabi/libopencv_java.so exists or that its path is correct
C:/android-ndk-r11c/build//../build/core/prebuilt-library.mk:45: ***
Android NDK: Aborting.  Stop.

我已按照本教程:Tutorial - part 1: Using OpenCV Nonfree Module (SIFT, SURF) in Android NDK Projects
我也尝试过Kornel提供的解决方案:Kornel's solution for building nonfree

这是我的文件层次结构:app - > src - >主要 - > jni

这是我的Android.mk文件

LOCAL_PATH  := $(call my-dir)
OPENCV_PATH := D:\\03-Projects\\WorkSpace\\OpenCV-2.4.11-android- sdk\\OpenCV-android-sdk\\sdk\\native\\jni

include $(CLEAR_VARS)
OPENCV_INSTALL_MODULES := on
OPENCV_CAMERA_MODULES  := off
include $(OPENCV_PATH)\\OpenCV.mk

LOCAL_C_INCLUDES :=             \
  $(LOCAL_PATH)             \
  $(OPENCV_PATH)/include

LOCAL_SRC_FILES :=              \
  nonfree_init.cpp          \
  sift.cpp                  \
  surf.cpp

LOCAL_MODULE := nonfree
LOCAL_CFLAGS := -Werror -O3 -ffast-math
LOCAL_LDLIBS := -llog -ldl

include $(BUILD_SHARED_LIBRARY)

我试图为两者设置APP_ABI来构建ndk:

  

x86 armeabi-v7a

1 个答案:

答案 0 :(得分:0)

解决问题: 事实证明,我正在" main"下的一个文件夹中构建ndk项目。一个安卓工作室项目,由于某些原因没有工作  我将文件夹移动到另一个不属于任何android项目的目录中,问题解决了 虽然我后来遇到了其他一些不同的问题,但所有问题也都解决了,我很快就会提供一个逐步的解决方案来解决如何为新版本的opencv构建非自由模块的问题。上面的教程。