旗下导航:搜·么
当前位置:网站首页 > XML教程 > 正文

Linux下将Tinyxml编译为静态库【XML教程】,Linux,Tinyxml,静态库

作者:搜教程发布时间:2019-11-28分类:XML教程浏览:30评论:0


导读:转载请说明泉源:Linux下将Tinyxml编译为静态库一个运用需要在linux服务器上运转,不能保证每一个服务器都有运用依靠的库,又懒得每一个服务器都去安装下,也不...
转载请说明泉源:Linux下将Tinyxml编译为静态库

一个运用需要在linux服务器上运转,不能保证每一个服务器都有运用依靠的库,又懒得每一个服务器都去安装下,也不太实际,因而就将运用所用到的库悉数编译为静态库,直接丢到服务器上跑吧。此为运用挪用xml配置文件依靠tinyxml库示例,记录下,备忘。

1.下载tinyxml库,直接从官方下载,http://www.ki4.cn/。

2.解压缩下载好的包,我解压缩到test目次下,进入项目目次。

3.运用vim编辑器修正Makefile文件:

将个中的OUTPUT := xmltest一行修正为:OUTPUT := libtinyxml.a
将xmltest.cpp从SRCS:=tinyxml.cpp tinyxml-parser.cpp xmltest.cpp tinyxmlerror.cpp tinystr.cpp中删除,,解释掉xmltest.o:tinyxml.h tinystr.h。由于不需要将演示顺序添加到动态库中。
将${LD} -o $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}修正为:${AR} $@ ${LDFLAGS} ${OBJS} ${LIBS} ${EXTRA_LIBS}。
保留退出。
4.实行make敕令编译,即可在当前目次生成libtinyxml.a文件。

5.挪用测试,当前目次新建一个test.cpp文件,内容以下:

view sourceprint?01 #include "tinyxml.h"   
02 #include "tinystr.h"     
03 #include <iostream>     
04 using namespace std;   
05      
06 int main()   
07 {   
08     //建立一个XML的文档对象。   
09     TiXmlDocument *myDocument = new TiXmlDocument("test.xml");   
10     myDocument->LoadFile();   
11         
12     //取得根元素,即Persons。   
13     TiXmlElement *RootElement = myDocument->RootElement();   
14      
15     //输出根元素称号,即输出Persons。   
16     cout << RootElement->Value() << endl;   
17           
18     //取得第一个Person节点。   
19     TiXmlElement *FirstPerson = RootElement->FirstChildElement();   
20     //输出接点名Person   
21       
22     cout << FirstPerson->Value() << endl;   
23     //取得第一个Person的name节点和age节点和ID属性。   
24     TiXmlElement *NameElement = FirstPerson->FirstChildElement();   
25     TiXmlElement *AgeElement = NameElement->NextSiblingElement();   
26     TiXmlAttribute *IDAttribute = FirstPerson->FirstAttribute();   
27          
28     //输出第一个Person的name内容,即周星星;age内容,即20;ID属性,即1。   
29     cout << NameElement->FirstChild()->Value() << endl;   
30     cout << AgeElement->FirstChild()->Value() << endl;   
31     cout << IDAttribute->Value() << endl;   
32      
33         return 0;   
34 }

建立test.xml文件,内容以下:

view sourceprint?01 <Persons>   
02     <Person ID="1">   
03         <name>周星星</name>   
04         <age>20</age>   
05     </Person>   
06     <Person ID="2">   
07         <name>白晶晶</name>   
08         <age>18</age>   
09     </Person>   
10 </Persons>

编译当前文件,挪用libtinyxml.a库:

[root@server tinyxml]# g++ -o test test.cpp ./libtinyxml.a

实行编译好的顺序:

[root@server tinyxml]# ./test
Persons
Person
周星星
20
1

将编译好的test和test.xml放至别的一台没有tinyxml的库,实行胜利。

以上就是Linux下将Tinyxml编译为静态库 的内容,更多相关内容请关注ki4网(www.ki4.cn)!

标签:LinuxTinyxml静态库


欢迎 发表评论: