关于expat库的编译

Expat库是一个非SAX兼容的事件驱动XML解析器,它在解析XML文档时调用预先注册的处理器。文章介绍了Expat的事件处理机制,包括元素开始、结束和字符事件,并提到可以通过配置实现交叉编译。

1、expat库简介

    refer to wiki:

    To use the Expat library, programs first register handler functions with Expat. When Expat parses an XML document, it calls the registered handlers as it finds relevant tokens in the input stream. These tokens and their associated handler calls are called events. Typically, programs register handler functions for XML element start or stop events and character events. Expat provides for more sophisticated event handling such as XML Namespace declarations, processing instructions and DTD events.
     Expat is parsing events resemble the events defined in the Simple API for XML (SAX), but Expat is not a SAX-compliant parser. Projects incorporating the Expat library often build SAX and possibly DOM parsers on top of Expat. While Expat is mainly a stream-based (push) parser, it supports stopping and restarting parsing at arbitrary times, thus making the implementation of a pull parser relatively easy as well
.

  

        为了使用Expat库,程序首先在Expart中住一个处理器函数(handler functions) 。当Expat解析XML文档时,发现输入流中有相关的令牌会调用已经注册的处理器(handlers) ,这些令牌(tokens)和其先关的处理器(handler)被称作事件。通常情况下, 程序会为XML元素中的开始事件、停止事件、字符事件(character events)注册处理函数。Expat提供了 更多复杂事件处理,例如XML命名空间声明,处理指令和DTD事件。

     Expat是定义在SAX中的解析事件或类似事件。但是它不是一个严格的服从SAX的解析器。Expat是主要基于流的解析器(推送) ,它支持在任意时间停止和重新启动的解析器,从而使相关的拉动型解析器(pull parser )实现很容易。
    (第一次翻译,翻译的不好啊~~~)

      

      说白了 ,Expat是一个面向流的xml解析器。

 

2、expat库的交叉编译

     expat-2.0.1.tar.gz

 

    ./configure --host=arm-none-linux-gnueabi --prefix=/root/Qt/output/qt-arm/    

     make && make install

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值