2013-05-15 55 views
2

我想在Android NDK上編譯依賴於OpenCV的C++代碼。 我看了幾個答案(主要是this),但顯然NDK仍然無法看到我在LOCAL_C_INCLUDES變量中給它的目錄。編譯與OpenCV依賴的代碼Android NDK

這是我Application.mk:

APP_ABI :=armeabi armeabi-v7a 
APP_STL := gnustl_static 
APP_CPPFLAGS := -frtti -fexceptions 
APP_PLATFORM :=android-14 
NDK_TOOLCHAIN_VERSION=4.7 

這是我的Android.mk:

LOCAL_PATH := $(call my-dir) 
include $(CLEAR_VARS) 
LOCAL_MODULE:= swt 
LOAL_CPP_EXTENSIO:=.cpp 
LOCAL_C_INCLUDES := /usr/include:/usr/include/i386-linux-gnu:/usr/include/i386-linux-gnu/bits:/usr/include/i386-linux-gnu/sys:/usr/include/i386-linux-gnu/gnu:/usr/include/i386-linux-gnu/asm:/home/hamdy/Downloads/android-ndk-r8e/sources:/usr/local/include/opencv:/usr/local/include/opencv2/core 
LOCAL_CFLAFS := -x c++ -lopencv_core -lopencv_highgui -lopencv_imgproc 
LOCAL_SRC_FILES := TextDetection.cpp FeaturesMain.cpp 
include $(BUILD_SHARED_LIBRARY) 

這是我得到[cv.h是包含在文件中的錯誤我的.cpp因此它可以明顯看到,在/ usr /本地/包括/ OpenCV的目錄,但不能讓過去在它包括]:

/usr/local/include/opencv/cv.h:63:33: fatal error: opencv2/core/core_c.h: No such file or directory 
compilation terminated. 

回答

0

I D不知道爲什麼,但是當我在Linux下編譯相同的東西時,一切都編譯好了。在Windows下有錯誤。所以我已經轉向使用Linux

+0

對我來說這很奇怪,它並不是很容易在Linux上運行:/ –

+0

我確實在LInux下編譯了OpenCV示例,OpenCV隨Android SDK一起提供。 –