我们有一个应用程序适用于Mac和Windows平台工作正常,现在,使用libxml的XML数据的分析应用针对Android和iOS,以及我的问题是什么?
1 - 我需要建立的libxml为Android平台或它已经在那里为NDK的一部分吗?
如果需要建立任何指针如何开始?
我们有一个应用程序适用于Mac和Windows平台工作正常,现在,使用libxml的XML数据的分析应用针对Android和iOS,以及我的问题是什么?
1 - 我需要建立的libxml为Android平台或它已经在那里为NDK的一部分吗?
如果需要建立任何指针如何开始?
你有两个选择:
写一个Android.mk,可以成功地构建libxml的,依靠的是在您的主Android.mk结果。 您可以尝试在您的Mac本身的libxml建立(使用配置脚本并进行),以获得的文件需要什么要建一个想法,如果有任何特殊标志需要传递。
或者,使用的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将时间节省你从长远来看,第二种方法可能会更容易一些,但。