zoukankan      html  css  js  c++  java
  • libxml移植到android

    libxml是C语言写的xml解析库,是我们开发可移植程序的首选,下面讲述将其移植到android的步骤

    1.下载已经配置好的源代码包android_libxml2.rar

     http://pan.baidu.com/s/1sjpusFj

      该包里还有libxml2所依赖的字符转码库libiconv,也是配置好了的。我们所做的就是先编译

     libiconv,然后再编译libxml2,当然一块编译也是可以的。

    2.先把libiconv改名为jni,用命令行进入当前目录,执行ndk-build

    3.在把libxml2改名为jni,用命令行进入当前目录,执行ndk-build

    4.在obj/local/armeabi下就会生成我们需要的静态库了

    下面献上libxml2和libiconv的mk文件:

    #libiconv.mk##################################

    LOCAL_PATH:= $(call my-dir)
    include $(CLEAR_VARS)

    LOCAL_CFLAGS :=
    -Wno-multichar
    -DANDROID
    -DLIBDIR="c"
    -DBUILDING_LIBICONV
    -DIN_LIBRARY

    LOCAL_SRC_FILES :=
    libcharset/lib/localcharset.c
    lib/iconv.c
    lib/relocatable.c

    LOCAL_C_INCLUDES +=
    $(LOCAL_PATH)/include
    $(LOCAL_PATH)/libcharset
    $(LOCAL_PATH)/lib
    $(LOCAL_PATH)/libcharset/include
    $(LOCAL_PATH)/srclib

    LOCAL_PRELINK_MODULE := false
    LOCAL_MODULE_TAGS := optional
    LOCAL_MODULE := libiconv
    include $(BUILD_STATIC_LIBRARY)

    #libxml2.mk##################################

    LOCAL_PATH:= $(call my-dir)
    include $(CLEAR_VARS)

    LOCAL_SRC_FILES :=
    c14n.c catalog.c chvalid.c debugXML.c dict.c DOCBparser.c
    encoding.c entities.c error.c globals.c hash.c HTMLparser.c
    HTMLtree.c legacy.c list.c nanoftp.c nanohttp.c parser.c
    parserInternals.c pattern.c relaxng.c SAX.c SAX2.c
    threads.c tree.c trionan.c triostr.c uri.c valid.c
    xinclude.c xlink.c xmlIO.c xmlmemory.c xmlmodule.c
    xmlreader.c xmlregexp.c xmlsave.c xmlschemas.c xmlschemastypes.c xmlstring.c
    xmlunicode.c xmlwriter.c xpath.c xpointer.c

    LOCAL_C_INCLUDES :=
    $(LOCAL_PATH)/include
    $(LOCAL_PATH)/include/libxml
    $(LOCAL_PATH)/../libiconv/include
    $(LOCAL_PATH)/../libiconv
    $(LOCAL_PATH)/../libiconv/libcharset
    $(LOCAL_PATH)/../libiconv/lib
    $(LOCAL_PATH)/../libiconv/libcharset/include

    LOCAL_PRELINK_MODULE := false
    LOCAL_MODULE_TAGS := optional

    LOCAL_CFLAGS := -L$(LOCAL_PATH)
    -L$(LOCAL_PATH)/../obj/local/armeabi
    LOCAL_STATIC_LIBRARIES := iconv
    LOCAL_MODULE:=libxml2
    include $(BUILD_STATIC_LIBRARY)

  • 相关阅读:
    简单读取网上的文本文件
    学习官方示例 System.RunError
    上周热点回顾(9.209.26)
    上周热点回顾(9.69.12)
    中国程序员节,10月24日,你同意吗?
    上周热点回顾(9.139.19)
    博客园电子期刊2010年8月刊发布啦
    [每周特惠]敏捷软件开发(原书第2版) +敏捷开发的艺术
    Meego专题上线了
    【投票】中国程序员节选在哪天
  • 原文地址:https://www.cnblogs.com/guoxiaoqian/p/3915469.html
Copyright © 2011-2022 走看看