有人可以帮我为 LibXtract 编写 Android.mk 或指出正确的方向吗?
这是 lib 的来源 - https://github.com/jamiebullock/LibXtract.git
或者也许有一种方法可以在 Android 中使用 linux 生成的共享对象?
有人可以帮我为 LibXtract 编写 Android.mk 或指出正确的方向吗?
这是 lib 的来源 - https://github.com/jamiebullock/LibXtract.git
或者也许有一种方法可以在 Android 中使用 linux 生成的共享对象?
特别是对于较大的已建立项目,制作Android.mk
文件是一项相当大的工作。更重要的是,如果您不熟悉 Android NDK 构建架构,其理解需要深入研究文档和 Android NDK make 文件。我建议尝试通过设置CC
指向您的 NDK 工具链和CFLAGS += -sysroot $(SYSROOT)
位置SYSROOT=${NDK_INSTALL_DIR}/platforms/android-<level>/arch-<arch>/
(取决于目标 Android API 版本和架构)来使用现有的 make 文件。即使不知道你的图书馆,我敢打赌你应该有很大的成功机会。Android NDK 文档 ( ${NDK_INSTALL_DIR}/doc/STANDALONE-TOOLCHAIN.html
) 详细介绍了独立工具链的使用,还说明了如何创建不需要使用-sysroot
参数的独立工具链xxx-gcc
。
如果您决定Android.mk
改用,您可能会检查现有项目 -我想到了 CSipSimple(从标准形式的 GNU make 文件转换的 PJSIP)。
重要的是使用 Android 工具链创建共享对象。可以在应用程序源代码树之外构建它们,然后将共享对象复制到包源libs/<architecture>/
目录中。
与您的构建系统的集成取决于未知的细节(包括您希望整个集成有多顺利,例如因为其他人在同一个项目中工作)。如果您从命令行创建应用程序,最简单的方法是在包根目录中使用 GNU make 文件或 shell 脚本,通过调用 libXtract make file ant 来构建和打包 Java,确保libXtract.so
您的应用程序包是最新的and
应用。如果您正在使用ant
应该有一种方法来指定使用make
来照顾libXtract.so
. 我不确定 Eclipse 是否完全依赖于ant
构建应用程序来了解这是否足以通过在 Eclipse 中单击鼠标按钮来启用完整构建。
这个问题的答案说你可以使用 cmake 脚本来构建Android.mk
文件——我没有尝试过这种方法。