android - OpenCV无法为ARM64目标构建(Android)

标签 android c++ visual-studio opencv c++11

我正在尝试创建一个.so库,其中包含OpenCV C++代码。
我设置了一个非常基本的东西-使用Visual Studio通过“动态共享库(Android)”模板构建项目。
我从这里下载了Android OpenCV SDK:
https://opencv.org/releases/
当我为ARM构建项目时,一切运行正常,并且我得到lib.so输出。
但是在为ARM64构建时,出现以下错误:

E0035 #error directive: This constructor has not been ported to this platform File: C:\Microsoft\AndroidNDK64\android-ndk-r16b\sources\cxx-stl\llvm-libc++\include\bitset (line 266)


这是我设置项目属性的方法:
ARM和ARM64:

Properties -> C/C++ -> Additional include directories = <openCV android sdk folder>\sdk\native\jni\include


臂:

Properties -> Linker -> General -> Additional library directories = <openCV android sdk folder>\sdk\native\libs\armeabi-v7a


Properties -> Linker -> Input-> Additional dependencies = <openCV android sdk folder>\sdk\native\libs\armeabi-v7a\libopencv_java4.so


ARM64:

Properties -> Linker -> General -> Additional library directories = <openCV android sdk folder>\sdk\native\libs\arm64-v8a


Properties -> Linker -> Input-> Additional dependencies = <openCV android sdk folder>\sdk\native\libs\arm64-v8a\libopencv_java4.so


如果我针对低于21的android API,则在为ARM进行构建时能够得到完全相同的错误。
关于如何解决问题的任何想法?

最佳答案

我遇到了同样的问题,决定下载OpenCV Android SDK https://github.com/opencv/opencv/releases/tag/4.4.0并使用NDK而不是编译源代码

关于android - OpenCV无法为ARM64目标构建(Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64249298/

相关文章:

C++/QML交互式组合框实现

windows - 如何读取 WinRT 错误?

android - BaseAdapter 类不会在 Asynctask 中设置 Adapter - Android

android - 更新到Android 3.1.3时找不到符号R

c++ - 不显示逻辑盘符

c++ - Microsoft Visual Studio (2008) - 解决方案资源管理器中的过滤器

visual-studio - 管理内部第 3 方依赖项

java - 获取直播电视视频流(像素)

android - 从 Java 中的 HTML 字符串中删除内联宽度属性

c++ - map 不能用作 C++ 中的数组样式打印吗?