cocos2dx 中使用 opencv

来源:互联网 发布:java shiro 权限控制 编辑:程序博客网 时间:2024/06/05 20:53

经过好几天的摸索debug终于搭建好了,cocos2dx中集成opencv,开发环境是eciplse和VS,在这里做个笔记避免忘记。


1.从http://opencv.org/releases.html 下载android pack

2.编写Android.mk

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

OpenCV_INSTALL_MODULES:=on
OPENCV_CAMERA_MODULES:=off

OPENCV_LIB_TYPE:=STATIC

ifeq ("$(wildcard $(OPENCV_MK_PATH))","")

#opencv下载路径
include G:\opencv-3.2.0-android-sdk\OpenCV-android-sdk\sdk\native\jni\OpenCV.mk
else  
include $(OPENCV_MK_PATH)  
endif 

LOCAL_MODULE    := libopencvcpp 

#opencv 相关操作代码源文件
LOCAL_SRC_FILES := ../../Classes/opencvtest.cpp
LOCAL_LDLIBS    += -lm -llog 

#这里最好编译成动态库
include $(BUILD_SHARED_LIBRARY) 
#include $(BUILD_STATIC_LIBRARY) 


#cocos2dx原有的

include $(CLEAR_VARS)


LOCAL_MODULE := cocos2dcpp_shared


LOCAL_MODULE_FILENAME := libcocos2dcpp


#LOCAL_SHARED_LIBRARIES :=libopencvcpp
#LOCAL_LDLIBS += -ldl
#LOCAL_CFLAGS := $(L_CFLAGS)


LOCAL_SRC_FILES := hellocpp/main.cpp \
                   ../../Classes/AppDelegate.cpp \
                   ../../Classes/HelloWorldScene.cpp \
                   ../../Classes/CppToJava.cpp \
                   ../../Classes/JavaToCpp.cpp \
                   ../../Classes/WakeUpDevice.cpp \
                   ../../Classes/RecordAudio.cpp \
                   ../../Classes/RecordVideo.cpp \
                   ../../Classes/sha1.cpp \
                   ../../Classes/parse_metafile.cpp \
                   ../../Classes/other.cpp \
                   ../../Classes/bitfield.cpp \
                   ../../Classes/Http.cpp \
                   ../../Classes/AcquirePic.cpp \
                   ../../Classes/AcquireHotNews.cpp \
                   ../../Classes/Task.cpp \
                   ../../Classes/TaskManager.cpp \
                   ../../Classes/AcquireRobot.cpp \
                   ../../Classes/SpeechRecognise.cpp \
                   ../../Classes/PlayMusic.cpp \
                   ../../Classes/socket/SocketBase.cpp \
                   ../../Classes/socket/SocketClient.cpp \
                   ../../Classes/socket/SocketServer.cpp \
                   ../../Classes/CursorTextField.cpp \
                   ../../Classes/MyCharSet.cpp
    

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../Classes


# _COCOS_HEADER_ANDROID_BEGIN
# _COCOS_HEADER_ANDROID_END

LOCAL_SHARED_LIBRARIES := libopencvcpp
LOCAL_STATIC_LIBRARIES := cocos2dx_static
# _COCOS_LIB_ANDROID_BEGIN
# _COCOS_LIB_ANDROID_END


include $(BUILD_SHARED_LIBRARY)


$(call import-module,./prebuilt-mk)


# _COCOS_LIB_IMPORT_ANDROID_BEGIN
# _COCOS_LIB_IMPORT_ANDROID_END



3.编写Application.mk文件


APP_STL:=gnustl_static




APP_CPPFLAGS := -frtti -DCC_ENABLE_CHIPMUNK_INTEGRATION=1 -std=c++11 -fsigned-char
APP_LDFLAGS := -latomic




ifeq ($(NDK_DEBUG),1)
  APP_CPPFLAGS += -DCOCOS2D_DEBUG=1
  APP_OPTIM := debug
else
  APP_CPPFLAGS += -DNDEBUG
  APP_OPTIM := release
endif


4.完成

原创粉丝点击