gpt4 book ai didi

android - 在 Android Studio 上构建时在 .so 符号中添加了“ndk112”

转载 作者:行者123 更新时间:2023-11-29 22:53:23 27 4
gpt4 key购买 nike

我正在使用 Android.mk 文件构建一个 Android 应用程序。我将此应用程序称为 A1。

我以 .so 文件的形式获得了一个具有实用程序功能的第三方本地库。我将这个库称为 N1。 N1 由第三方供应商基于 Android Studio 构建。

当我在 A1 中包含 N1 并尝试使用 Android.mk 构建 A1 时,由于符号不匹配错误导致编译失败。

当我检查符号不匹配时,区别如下:

一个。 Android Studio 生成的示例符号:_ZNSt6__ndk112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm

Android.mk 使用 A1 中存在的 N1 的头文件生成相同的符号:_ZNSt6__basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm

不同的是,N1 在它的每个符号中都添加了'ndk112'。如果我们在 Notepad++ 中打开 .so 文件就可以看到这一点。

我进行了大量搜索以检查是否有任何标志可用于解决此问题,但无法获得任何引用。有人可以帮我从使用 Android Studio 生成的 .so 文件的符号中删除“ndk112”。

最佳答案

原因与 https://stackoverflow.com/a/38798556/632035 相同. N1 和 A1 使用不同的 STL。他们必须使用相同的 STL。您需要使用 libc++ 重建 A1。

关于android - 在 Android Studio 上构建时在 .so 符号中添加了“ndk112”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57680703/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com