ndk版本和opencv产生冲突解决方式
一、
1、opencv3及以下的版本仅仅支持gnustl_shared编译,但是NDK16之后就不支持gnustl_shared的编译了,所以这就到了一个十字路口。要你就使用低于16版本的NDK,要么就是用opencv4,
2、下图是我编译的错误-match匹配器连接失败
3、新版本NDK使用libc++作为STL,但OpenCV使用的gnustl。
所以:
1、NDK降级
重新编译OpenCV 使用libc++作为STL
2、重新编译OpenCV 使用libc++作为STL
我采用的是NDK降级
二、NDK降级步骤
1 、需要下载一个ndk15版本,给你们提供一个链接,里面有各个版本。(https://blog.csdn.net/shuzfan/article/details/52690554)
2、下载完毕后需要解压文件,并解压到Android Studio的SDK目录里,并命名为ndk-bundle,我的路径为:D:\InstallPackage\Package\androidSDK\ndk-bundle
3、 配置变量
我的电脑----属性-----高级—环境变量----系统变量----path添加自己安装NDK的路径
4 、测试是否成功
cmd下输入 ndk-build
显示的: Could not find application project directory ! 可以不用管,因为你没有使用在一个 Android 项目上使用,它找不到 Android 项目。