[英]OpenCV Android NDK Project will not build
我在Ubuntu上使用OpenCV 2.4.4和Eclipse Juno。 我的问题类似于这个OpenCV for android示例程序显示错误
但是现在正在把我赶出去。 我周末的大部分时间都在努力让ndk和opencv库发挥得很好,但我仍然无法让它工作。 我在我的测试C ++ cpp文件中包括以下内容 -
#include <jni.h>
#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <cstdlib>
using namespace cv; //this is a problem
...
...
它告诉我,当我尝试构建“无法找到命名空间cv”时。 哦,我必须写错路径或者没有使用正确的库,对吧? 错误。 在终端中, ndk-build构建.so文件没有任何错误。 我可以在项目文件夹中看到它们。 但是,如果我尝试在eclipse中构建,即在虚拟设备或真实设备上构建apk for tesitng,那么我得到命名空间cv错误并且构建失败然后在cpp文件中cv加下划线红色并在eclipse文件中被标记为红色,我甚至无法尝试构建,直到此文件被“更正”。
显然,我做错了什么。 但是,如果我关闭我的eclipse项目,然后重新打开它,cpp文件不再标记为红色,我可以进行apk构建。 如果我尝试打开cpp文件,红色返回,在我完成项目关闭/打开rigmarole之前不会再发生构建。
老实说,我不知道问题的原因是什么。 任何帮助将不胜感激。
我的android.mk文件:
include $(CLEAR_VARS)
OPENCV_CAMERA_MODULES:=off
OPENCV_INSTALL_MODULES:=on
OPENCV_LIB_TYPE:=STATIC
include /the/correct/path/tp/opencv/sdk/native/jni/OpenCV.mk
LOCAL_MODULE := mylib
LOCAL_SRC_FILES := mylib.cpp
include $(BUILD_SHARED_LIBRARY)
Application.mk
APP_STL := gnustl_static
APP_CPPFLAGS := -frtti -fexceptions
APP_ABI := all #i have tried various targets
APP_PLATFORM := android-8
APP_MODULES := mylib
我不认为这会很困难。 我应该补充一点,我已经成功地将opencv与Android一起用于我使用Eclipse 3.5(我认为)和OpenCV 2.4.2构建在WIndows上的rproject中
编辑我也想说我刚刚做了一个快速的脏测试opencv操作。 我写了一个快速的Sobel函数,并将其称为Java文件中的本机函数,并成功地“sobelled”了一个位图。 当然,我仍然必须关闭/打开我的项目才能做到这一点。
嗨,我和你有同样的问题,我添加下面的“opencv android sdk”路径,包括问题消失了。
exp:C:\\ project \\ OpenCV-2.4.6-android-sdk \\ sdk \\ native \\ jni \\ include用你的opencv-android-sdk路径切换路径。
我知道这可能为时已晚,但在我的情况下(Windows + Eclipse)我更正了这个问题,只是将反斜杠“\\”改为斜线“/”在路径和符号包括opencv jni libs中。
示例:错误的H:\\ opencv \\ sdk \\ native \\ jni \\ include正确的H:/ opencv / sdk / native / jni / include
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.