【问题标题】:enabling "libc++_shared.so" to be enabled in the OpenCV android application在 OpenCV android 应用程序中启用“libc++_shared.so”
【发布时间】:2020-06-27 05:21:10
【问题描述】:

我想用 OpenCV 实现一个项目。我已经在项目中导入了 OpenCV SDK,我收到如下错误:-

java.lang.UnsatisfiedLinkError: dlopen failed: library "libc++_shared.so" not found

我已在 stackoverflow 中阅读了您的解决方案。链接如下:-

Android Studio CMake - shared library missing libc++_shared.so? Can CMake bundle this?

我已经尝试从 github 实施解决方案:-

https://github.com/jomof/ndk-stl/blob/master/ndk-stl-config.cmake

我找不到任何解决方案。

我只想将“libc++_shared.so”打包到 apk 中,并且 SDK 在我的项目中正常运行。我对构建工具 cmake 或 ndk-build 一无所知。

请提供一个简单的解决方案,以便我可以在应用程序中启用“libc++_shared.so”,以便 OpenCV 项目正常运行。

我的错误日志如下所示。

我的项目结构如下:-

之前我添加了 OpenCV SDK 中提到的 CMakeLists.txt

cmake_minimum_required(VERSION 3.6)

 # dummy target to bring libc++_shared.so into packages
 add_library(opencv_jni_shared STATIC dummy.cpp)

还有一个可能在 apk 中包含“libc++_shared.so”的 dummmy.cpp 文件。 还没有结果。

请帮忙解决。

【问题讨论】:

  • 您好,我也遇到了这个问题,您找到解决方案了吗?
  • 是的,我找到了解决方案。有什么可以帮助您的吗?
  • 我确实发现了它。我找到了一个 GitHub 项目,其中包含文件并将它们复制到我的文件中,它开始工作,文档说 Android Studio 应该为我完成这个。
  • 你的项目现在工作了吗?
  • 不是真的.. 我修复的所有东西都需要另一个依赖项。现在我正在寻找一些盖子打开一些 .so 文件。我主要担心的是 Gradle 为什么不把这些东西降下来。

标签: android c++ android-studio opencv cmake


【解决方案1】:

尝试将以下行从应用部分添加到您的 build.gradle 文件中。

参数“-DANDROID_STL=c++_shared”

它必须添加到 externalNativeBuild 子部分。

android {
    .
    .
    defaultConfig {
        .
        externalNativeBuild {
            cmake {
                .
                arguments "-DANDROID_STL=c++_shared"
            }
        }
    }
}

顺便说一句:Ranjit Vamadevan,我在这里看不到您的解决方案,但您提到您直接在 cmets 中找到了一个。我不能在那里回答。也可以分享给我们吗?

【讨论】:

    【解决方案2】:

    这为我解决了这个问题: 将 C:\Users%username%\AppData\Local\Android\sdk\ndk-bundle\sources\cxx-stl\llvm-libc++\libs%platform%\libc++_shared.so 文件的内容放入您的 jniLibs文件夹。

    在这里找到:https://github.com/bkaradzic/bgfx/issues/1122#issuecomment-296356682

    【讨论】:

      猜你喜欢
      • 2021-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-06
      • 2016-01-09
      • 2012-08-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多