我正在建立一个使用opencv库的cpp文件。我包括cv.h和我的Application.mk

LOCAL_LDLIBS := "C:\OpenCV2.1\lib\cxcore210.lib" "C:\OpenCV2.1\lib\highgui210.lib" "C:\OpenCV2.1\lib\cvaux210.lib"  "C:\taucs_full\lib\win32\libtaucs.lib"

但是我不能调用任何函数,例如cvSaveImage。我浏览了opencv目录,并尝试查找实现了这些功能但找不到的cpp文件。
那我该怎么办呢?

最佳答案

您的LOCAL_LDLIBS列出了Windows版本的OpenCV库(我怎么知道?因为它们具有.lib扩展名)。要构建您的Android本机库,您应该首先使用NDK及其gcc工具链为Android构建OpenCV。这将产生诸如libcxcore210.a等文件。您将这些文件添加到LOCAL_LDLIBS中(请注意, lib .a 被隐藏了):

LOCAL_LDLIBS += -Lc:/opencv2.1/libandroid -lcxcore210 -lhighgui210 -lcvaux210

另请注意,此定义应放在Android.mk文件中,而不是Application.mk中!

关于c++ - 用opencv构建ndk,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12996903/

10-08 23:24