首页 > 解决方案 > 如何创建在 Android NDK 上运行的预构建库?

问题描述

我主要是一名 C 开发人员,负责将一些 C 库构建到可以构建到 Android 应用程序中的共享对象文件中。我遇到了这个链接,它讨论了如何将预建库添加到 Android Studio 项目中,但关于如何实际构建预建库的信息很少。我确实找到了信息说我不能只使用 Linux 交叉编译器来这样做,因为 ABI 的细微差别。我该怎么做呢?我需要使用 Android Studio 吗?我的来源需要包含一些特殊的标题吗?或者我可以只使用 NDK 中的交叉编译器并使用 编译gcc -shared -fPIC吗?

标签: androidandroid-ndk

解决方案


使用 NDK 工具链构建您的库就足够了。通常使用 NDK 支持的最低平台 API 级别就可以了。您应该为不同的 CPU 生成二进制文件。如果您愿意,您可以跳过 32 位版本,但 Android Play 商店的规则要求您拥有 64 位版本。您不需要 Android Studio 来执行此任务,也无需更改您的源代码。

如果您的库导出 C++ API,请使用c++_shared运行时。


推荐阅读