gpt4 book ai didi

android - 为 Android 使用 libxml

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:16:44 28 4
gpt4 key购买 nike

我们有一个适用于 Mac 和 Windows 平台的应用程序,现在面向 Android 和 iOS,使用 libxml 解析 XML 数据的应用程序,我的问题是?

1 - 我需要为 Android 平台构建 libxml 还是它已经作为 NDK 的一部分存在?

如果需要构建任何指针如何开始?

最佳答案

你有两个选择:

编写一个可以成功构建 libxml 的 Android.mk,并取决于主 Android.mk 中的结果。您可以尝试在 Mac 上本地构建 libxml(使用配置脚本和 make),以了解需要构建哪些文件,以及是否需要传递任何特殊标志。

或者,使用 libxml 的配置脚本并使用 NDK 的工具链为 Android 构建 libxml。你必须做这样的事情:

NDK_ROOT=/path/to/ndk
API_LEVEL=YOUR_API_LEVEL
SYSROOT=$NDK_ROOT/platforms/android-$API_LEVEL/arch-arm

export CC="$NDK_ROOT/toolchains/arm-linux-androideabi-4.4.3/Darwin-x86/bin/arm-linux-androideabi-gcc"
export CFLAGS="--sysroot=$SYSROOT"
export LDFLAGS="--sysroot=$SYSROOT"

./configure --host=arm-linux-gnueabi --enable-static --disable-shared
make libxml2.la

从技术上讲,Android 的主机三元组是 arm-linux-androideabi,但大多数配置脚本无法识别它,对于我们这里的目的,-gnueabi 很接近够了。

我最终建议 make libxml2.la 而不是仅仅 make 因为测试没有正确构建。生成的库将位于 .libs/ 文件夹中。

第二种方法可能更容易一些,但如果您打算为多种架构(arm、armv7-a,甚至可能是 x86 和 mips)构建您的应用程序,编写您自己的 Android.mk 将在很长一段时间内节省您的时间跑。

关于android - 为 Android 使用 libxml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12052089/

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