Libxml2庫的編譯和使用

2021-06-01 02:10:58 字數 1760 閱讀 4021

libxml2庫提供了c語言解析和構造xml文件的介面,為後台c語言處理程式和前台應用程式提供了一種通用的通迅方式。

本文以libxml2-2.6.30版本來說明libxml2庫的使用方法。

1.    編譯庫檔案

libxml2-2.6.30.tar.gz檔案解壓後,進入libxml2-2.6.30資料夾,順序執行以下命令:

chmod +x ./configure

./configure

make

make install

「chmod +x ./configure」命令增加configure指令碼的可執行許可權;

「./configure」指令碼根據當前編譯系統的實際情況生成相應的makefile檔案;

「make」命令執行上一命令中生成的makefile檔案生成相應的目標檔案;

「make install」命令主要把目標檔案拷貝到/usr/local目錄下,

/usr/local/lib目錄下為以下庫檔案:

libxml2.a  libxml2.la  libxml2.so  libxml2.so.2 libxml2.so.2.6.30  pkgconfig  xml2conf.sh

/usr/local/include/libxml2目錄是libxml庫使用時需要的標頭檔案,包含在libxml子目錄下;

2.    使用libxml2庫

libxml2庫的api參考可以從查詢。下面以解析乙個簡單的xml檔案為例,給出乙個完整的例子。

xml文件:

she

123 563

c解析**xmltest.c:

view plain

#include 

#include 

int main(int argc, char* argv)  

szdocname = argv[1];  

doc = xmlreadfile(szdocname,"gb2312",xml_parse_recover); //解析檔案  

if (null == doc)  

curnode = xmldocgetrootelement(doc); //確定文件根元素  

if (null == curnode)  

if (xmlstrcmp(curnode->name, bad_cast "iomsg"))  

curnode = curnode->children;  

while(curnode != null)  

xmlfreedoc(doc);  

return 0;     

}  

3.    編譯xml解析程式

假設libxml2庫是按步驟1的編譯方式,其庫檔案和標頭檔案分別位於/usr/local/lib和/usr/local/include/libxml2目錄下。

動態庫編譯方式:

cc -o xmltest -i/usr/local/include/libxml2 -l/usr/local/lib -lxml2 xmltest.c

靜態庫的編譯方式:

cc -o xmltest -lm -i/usr/local/include/libxml2 xmltest.c /usr/local/lib/libxml2.a

「-i/usr/local/include/libxml2」指定libxml2庫的標頭檔案所在的路徑,「-l/usr/local/lib」指定動態庫所在路徑。

libxml2編譯安裝

僅作記錄學習。拷貝到ubuntu 12.04。首先進行解壓 tar zxvf libxml2 2.6.28.tar.gz 解壓到當前目錄下 cd libxml2 2.6.28 進行簡單的配置,具體的功能可以根據需求進行詳細了解 configure prefix usr local pc libxml...

如何使用libxml2庫?

libxml2庫是幹什麼的?很多人就開始說,是搞xml的 解析xml格式的 讀取xml檔案的.其實說的都不錯,但是對libxml2庫的理解狹隘了一點。libxml2現在不僅僅可以解析xml extensible markup language 格式,包括html hypertext markup l...

libxml2的安裝和使用

安裝方法 sudo apt get install libxml2 sudo apt get install libxml2 dev 利用以上命令安裝完軟體包後可以利用以下命令來檢視軟體包的狀態 確定是否安裝成功 dpkg s libxml2 dev 也可以用如下命令 得到的結果是一樣的 dpkg ...