Ami*_*k12 5 android libxml2 android-ndk
我们有一个适用于Mac和Windows平台的应用程序,现在针对Android和iOS,使用libxml解析XML数据的应用程序,我的问题是?
1 - 我是否需要为Android平台构建libxml或者它已经作为NDK的一部分构建?
如果需要构建任何指针如何启动?
您有两种选择:
编写一个可以成功构建libxml的Android.mk,并依赖于主Android.mk中的结果.您可以尝试在Mac上本地构建libxml(使用configure脚本和make)以了解需要构建哪些文件,以及是否需要传递任何特殊标志.
或者,使用libxml的configure脚本并使用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
Run Code Online (Sandbox Code Playgroud)
从技术上讲,Android的主机三元组是arm-linux-androideabi,但大多数配置脚本都无法识别它,而且就我们的目的而言,-gnueabi它足够接近.
我最后建议make libxml2.la而不仅仅是make因为测试没有正确构建.生成的库将最终出现在该.libs/文件夹中.
第二种方法可能会更容易一些,但如果您打算为多种架构(arm,armv7-a,甚至x86和mips)构建应用程序,那么编写自己的Android.mk将为您节省时间.
| 归档时间: |
|
| 查看次数: |
6373 次 |
| 最近记录: |