Android OpenCV opencv2/core/core.hpp:没有这样的文件或目录
我正在创建一个小项目来测试Android Studio 1.4上的opencv(2.4),但当我尝试执行该应用程序时,NDK编译器有一个问题。我认为cpp文件找不到opencv的路径,但我不知道为什么 有没有办法解决这个问题 错误:Android OpenCV opencv2/core/core.hpp:没有这样的文件或目录,android,c++,opencv,java-native-interface,Android,C++,Opencv,Java Native Interface,我正在创建一个小项目来测试Android Studio 1.4上的opencv(2.4),但当我尝试执行该应用程序时,NDK编译器有一个问题。我认为cpp文件找不到opencv的路径,但我不知道为什么 有没有办法解决这个问题 错误: /home/User/AndroidStudioProjects/OpenCV/app/src/main/jni/native_processing.h 错误:(10,33)opencv2/core/core.hpp:没有这样的文件或目录 JNI: OpenCV/a
/home/User/AndroidStudioProjects/OpenCV/app/src/main/jni/native_processing.h
错误:(10,33)opencv2/core/core.hpp:没有这样的文件或目录
JNI:
OpenCV/app/src/main/jni/native_processing.cpp
OpenCV/app/src/main/jni/native_processing.h
#ifndef OPENCV_SAMPLE_NATIVE_PROCESSING_H
#define OPENCV_SAMPLE_NATIVE_PROCESSING_H
#include <jni.h>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/features2d/features2d.hpp>
#include <vector>
extern "C" {
JNIEXPORT void JNICALL Java_com_projeto_opencv_MainActivity_FindFeatures(JNIEnv *, jobject,
jlong addrGray,
jlong addrRgba);
}
#endif
您是否只尝试了#包含
(而不是#包含
)?
这对我来说很有效(ubuntu 14.04和opencv 2.4)。包含的opencv.mk为您定义了包含路径,所以不要在包含之后再次尝试重新定义它。另外,您可能更喜欢
OPENCV_LIB_TYPE:=STATIC
,因此稍微清理一下Android.mk文件:
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
OPENCV_CAMERA_MODULES:=on
OPENCV_LIB_TYPE:=STATIC
include /home/User/AndroidStudioProjects/OpenCV/OpenCV-android-sdk2/sdk/native/jni/OpenCV.mk
LOCAL_SRC_FILES := native_processing.cpp
LOCAL_LDLIBS += -llog -ldl
LOCAL_MODULE:= native_test
include $(BUILD_SHARED_LIBRARY)
你真的使用相机模块吗 从build.gradle中注释掉以下内容(如果有): 将此添加到gradle:
sourceSets.main {
jni.srcDirs = [] //disable automatic ndk-build call
}
没用。如果我把opencv#include(#include#include#include)。。。编译器在$include中给了我一个错误。。。我认为问题不在OpenCVI上。您是否在Application.mk中定义了APP_STL?请发布
ndk build V=1
的输出,但是如果你使用gradle插件来构建你的。重要的是build.gradleI的内容在build.gradle中添加了android{sourceSets{main{jni.srcDirs=[]}},它可以工作!嗨,盖森,我也面临着同样的问题。你能帮我吗
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
OPENCV_CAMERA_MODULES:=on
OPENCV_LIB_TYPE:=STATIC
include /home/User/AndroidStudioProjects/OpenCV/OpenCV-android-sdk2/sdk/native/jni/OpenCV.mk
LOCAL_SRC_FILES := native_processing.cpp
LOCAL_LDLIBS += -llog -ldl
LOCAL_MODULE:= native_test
include $(BUILD_SHARED_LIBRARY)
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
sourceSets.main {
jni.srcDirs = [] //disable automatic ndk-build call
}