如何从 AOSP 构建库?

How to build a library from AOSP?

我需要构建来自 android AOSP 的 libjpeg-turbo 库。

存储库包含此 Android.bp 文件,我不知道如何构建它。在此之前,我构建的所有库在 JNI 文件夹中都有 Android.mk 文件,我使用的是 ndk-build 命令。 我怎样才能成功地建立这个图书馆?

不久前,NDK 和 AOSP 配置脚本 (Android.mk) 看起来非常相似。过去,NDK 使用 AOSP 构建系统(基于 GNU make)。从这些早期开始,这两个构建系统的发展朝着不同的方向发展,并在最近将 AOSP 转换为蓝图构建系统时达到顶峰。

但即使在此之前,您也只能偶尔将 ndk-build 与 AOSP Android.mk 文件一起使用。许多库,尤其是有依赖关系的库,无法以这种方式构建。

幸运的是,libjpeg-turbo 是 AOSP 的子项目之一,没有问题的依赖关系。如果您在该库的 git 历史记录中 step back,您将能够使用 ndk-build 构建它。您甚至可以挑选对您的 NDK 兼容分支的相关更改。

或者,您可以使用 official libjpeg-turbo repository 而不是 AOSP 树。