Linux下将Tinyxml编译为静态库的方法

  介绍

小编给大家分享一下Linux下将Tinyxml编译为静态库的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

Linux下将Tinyxml编译为静态库

一个应用需要在Linux服务器上运行,不能保证每个服务器都有应用依赖的库,又懒得每个服务器都去安装下,也不太现实,于是就将应用所用到的库全部编译为静态库,直接丢到服务器上跑吧。此为应用调用xml配置文件依赖Tinyxml库示例,记录下,备忘。

1。下载Tinyxml库,直接从官方下载,http://www.php.cn/?/p>

2。解压缩下载好的包,我解压缩到测试目录下,进入项目目录。

3。使用vim编辑器修改Makefile文件:

将其中的输出:=使用xmlt一行修改为:输出:=libtinyxml。一个
将xmltest.cpp从src:=tinyxml。cpp tinyxml-parser。cpp使用xmlt。cpp tinyxmlerror。cpp tinystr.cpp中删除,注释掉xmltest.o: tinyxml。h tinystr。h。因为不需要将演示程序添加到动态库中。
将$ {LD} - o $ @ $ {LDFLAGS} $ {obj} ${填词}$ {EXTRA_LIBS}修改为:$ {AR} $ @ $ {LDFLAGS} $ {obj} ${填词}$ {EXTRA_LIBS}。
保存退出。
,,4。执行让命令编译,即可在当前目录生成libtinyxml.a文件。

5。调用测试,当前目录新建一个测试。cpp文件,内容如下:

view  sourceprint ? 01, # include “tinyxml.h",,,   02年,# include “tinystr.h",,,,,   03年,# include  & lt; iostream>,,,,,   04,using  namespace 性传播疾病;,,,   05年,,,,,,   06年,int  main (),,,   07年,{,,   08年,,,,,//创建一个XML的文档对象只,,   09年,,,,,TiXmlDocument  * myDocument =, new  TiXmlDocument (“test.xml");,,,   10个,,,,,myDocument→LoadFile (),,,,   11,,,,,,,,,   12,,,,,//获得根元素,即人只,,   13,,,,,TiXmlElement  * RootElement =, myDocument→RootElement (),,,,   14日,,,,,,   15,,,,,//输出根元素名称,即输只出人,,   16,,,,,cout  & lt; & lt;, RootElement→价值(),& lt; & lt;, endl;,,,   17日,,,,,,,,,,,   18岁,,,,,//获得第一个人节点只,,   19日,,,,,TiXmlElement  * FirstPerson =, RootElement→FirstChildElement (),,,,   20,,,,,//输出接点名Person ,,   21日,,,,,,,   22日,,,,,cout  & lt; & lt;, FirstPerson→价值(),& lt; & lt;, endl;,,,   23日,,,,,//获得第一个人的名字节点和年龄节点和ID属性只,,   24,,,,,TiXmlElement  * NameElement =, FirstPerson→FirstChildElement (),,,,   25岁,,,,,TiXmlElement  * AgeElement =, NameElement→NextSiblingElement (),,,,   26日,,,,,TiXmlAttribute  * IDAttribute =, FirstPerson→FirstAttribute (),,,,   27,,,,,,,,,,   28日,,,,,//输出第一个人的名字内容,即周星星;年龄内容,即20;ID属性,即1只,,   29日,,,,,cout  & lt; & lt;, NameElement→写上()→价值(),& lt; & lt;, endl;,,,   30,,,,,cout  & lt; & lt;, AgeElement→写上()→价值(),& lt; & lt;, endl;,,,   31日,,,,,cout  & lt; & lt;, IDAttribute→价值(),& lt; & lt;, endl;,,,   32岁,,,,,,   33岁,,,,,,,,,return  0;,,,   34,}

创建测试。xml文件,内容如下:

view  sourceprint ? 01, & lt; Persons>,,,   02年,,,,,& lt; Person  ID=?“祝辞,,,   03年,,,,,,,,,& lt; name>周星星& lt;/name>,,,   04年,,,,,,,,,& lt; age> 20 & lt;/age>,,,   05年,,,,,& lt;/Person>,,,   06年,,,,,& lt; Person  ID=?“祝辞,,,   07年,,,,,,,,,& lt; name>白晶晶& lt;/name>,,,   08年,,,,,,,,,& lt; age> 18 & lt;/age>,,,   09年,,,,,& lt;/Person>,,,   10,& lt;/Persons>

编译当前文件,调用libtinyxml。库:

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

执行编译好的程序:

[root@server  tinyxml] #,,/测试   人   人   周星星   20.   1

将编译好的测试和测试。xml放至另外一台没有tinyxml的库,执行成功。

以上是“Linux下将tinyxml编译为静态库的方法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

Linux下将Tinyxml编译为静态库的方法