Android的ndk編程多動態(tài)庫

由于OpenCV開源圖像處理代碼簡單,因此常用于各種平臺中。采用NDK編程可以方便的使用OpenCV資源。
OpenCV的動態(tài)庫已經(jīng)有了,且編譯對版本有較高的要求,需要加入其它動態(tài)庫的時(shí)候需要在Android.mk修改實(shí)現(xiàn)。

LOCAL_PATH:=$(call my-dir)
#添加OpenCV
include $(CLEAR_VARS)
OpenCV_INSTALL_MODULES := on
OpenCV_CAMERA_MODULES := off
OPENCV_LIB_TYPE :=STATIC
# change this folder path to yours
include /home/zzw/AndroidStudioProjects/opencv_face/OpenCV-android-sdk/sdk/native/jni/OpenCV.mk 

# add mylib 自己的lib
LOCAL_C_INCLUDES += /home/zzw/AndroidStudioProjects/mylib/build-android2/install/include
LOCAL_LDLIBS += -L/home/zzw/AndroidStudioProjects/mylib/build-android/install/lib -lmylib
#生成模型文件的名字
LOCAL_MODULE    := JNIpart
#添加其它可編輯的文件,如ShapeConverter.cpp ,XmlReadSave.cpp
LOCAL_SRC_FILES := squeeze_jni.cpp ShapeConverter.cpp XmlReadSave.cpp

LOCAL_CFLAGS := -O2 -fvisibility=hidden -fomit-frame-pointer -fstrict-aliasing -ffunction-sections -fdata-sections -ffast-math
LOCAL_CPPFLAGS := -O2 -fvisibility=hidden -fvisibility-inlines-hidden -fomit-frame-pointer -fstrict-aliasing -ffunction-sections -fdata-sections -ffast-math
LOCAL_LDFLAGS += -Wl,--gc-sections

LOCAL_CFLAGS += -fopenmp
LOCAL_CPPFLAGS += -fopenmp
LOCAL_LDFLAGS += -fopenmp
#andorid 系統(tǒng)庫
LOCAL_LDLIBS    += -llog -lGLESv2 -lEGL -ljnigraphics
include $(BUILD_SHARED_LIBRARY)

Application.mk文件采用常用的編寫方式:ndkr15版本以下,切記NDK的版本不能太高了

# APP_STL := stlport_static
APP_STL := gnustl_static
# APP_ABI := armeabi armeabi-v7a
APP_CPPFLAGS := -std=c++11 -frtti -fexceptions
#選擇平臺
APP_ABI := armeabi-v7a
APP_PLATFORM := android-14
#NDK_TOOLCHAIN_VERSION := 10
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容