linux cpp xml,linux下用tinyxml来解析XML

在尝试使用TinyXML库编译C++程序时,遇到链接错误,显示undefined reference to多个TiXml库函数。这通常是因为缺少了对应的库链接。问题涉及TiXmlDocument的构造、加载文件、获取元素文本、属性以及节点遍历等操作。
摘要由CSDN通过智能技术生成

根据网上的这个例子编译,却出现一些“undefined reference to”的错误;

错误如下:

8-3.cpp:(.text+0x81): undefined reference to `TiXmlDocument::TiXmlDocument(char const*)'

8-3.cpp:(.text+0x94): undefined reference to `TiXmlDocument::LoadFile(TiXmlEncoding)'

8-3.cpp:(.text+0x1a7): undefined reference to `TiXmlElement::GetText() const'

8-3.cpp:(.text+0x1f0): undefined reference to `TiXmlElement::Attribute(char const*) const'

/tmp/cceasJCM.o: In function `TiXmlNode::FirstChildElement()':

8-3.cpp:(.text._ZN9TiXmlNode17FirstChildElementEv[TiXmlNode::FirstChildElement()]+0xd): undefined reference to `TiXmlNode::FirstChildElement() const'

/tmp/cceasJCM.o: In function `TiXmlNode::FirstChild(char const*)':

8-3.cpp:(.text._ZN9TiXmlNode10FirstChildEPKc[TiXmlNode::FirstChild(char const*)]+0x14): undefined reference to `TiXmlNode::FirstChild(char const*) const'

/tmp/cceasJCM.o: In function `TiXmlNode::NextSibling(char const*)':

8-3.cpp:(.text._ZN9TiXmlNode11NextSiblingEPKc[TiXmlNode::NextSibling(char const*)]+0x14): undefined reference to `TiXmlNode::NextSibling(char const*) const'

/tmp/cceasJCM.o: In function `TiXmlString::quit()':

8-3.cpp:(.text._ZN11TiXmlString4quitEv[TiXmlString::quit()]+0xc): undefined reference to `TiXmlString::nullrep_'

/tmp/cceasJCM.o: In function `TiXmlDocument::~TiXmlDocument()':

8-3.cpp:(.text._ZN13TiXmlDocumentD1Ev[TiXmlDocument::~TiXmlDocument()]+0xb): undefined reference to `vtable for TiXmlDocument'

8-3.cpp:(.text._ZN13TiXmlDocumentD1Ev[TiXmlDocument::~TiXmlDocument()]+0x24): undefined reference to `TiXmlNode::~TiXmlNode()'

collect2: ld 返回 1

///

下面是要编译的测试程序

#include

#include "tinyxml.h"

using namespace std;

int main(int,char *[])

{

TiXmlDocument dom("D:/1.xml");

bool bSuccess = dom.LoadFile();

if (!bSuccess)

{

cout

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值