解决ndk-build opencv native c++ ld: error: undefined symbol

使用的opencv的版本:3.4.14

#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))","")
include $(LOCAL_PATH)/native/jni/OpenCV.mk
else
include $(OPENCV_MK_PATH)
endif

LOCAL_MODULE := opencvtest

#自己的文件名
LOCAL_SRC_FILES := gray.cpp

LOCAL_LDLIBS += -lm -llog

include $(BUILD_SHARED_LIBRARY)
#Application.mk
APP_STL := c++_shared
APP_ABI := armeabi-v7a, x86
#
##支持动态类型绑定,加入异常机制
APP_CPPFLAGS := -frtti -fexceptions

APP_PLATFORM := android-9

ndk-build之后报错如下:
在这里插入图片描述
把opencv版本改为4.5.2,并且将Application.mk修改APP_PLATFORM := android-21,编译通过。
在这里插入图片描述
参考资料:https://blog.csdn.net/firing00/article/details/87537635
https://github.com/opencv/opencv/issues/14419


版权声明:本文为weixin_46321614原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。