Qt undefined reference to `pugi::xml_document::xml_document(



最近我正在研究一个带有qt/c /xml和其他内容的项目。我必须获得一些字符串值形成XML文件。为此我正在使用

#include "pugixml.hpp"

但是当我使用pugi::xml_document document;时,它会出现错误。

undefined reference to 'pugi::xml_document::xml_document()'

正如我在此链接中看到的那样,我必须在编译时使用pugixml.cpp。任何人都知道如何将pugixml.cpp添加到QT项目?

我正在使用

Qt Creator 4.0.2 Based on Qt 5.7.0 (GCC 4.9.1 20140922(Red Hat 4.9.1-10), 63 bit)

您可以通过编辑称为pugiconfig.hpp的文件并在此处删除行:

来解决此问题:
// Uncomment this to switch to header-only version
//#define PUGIXML_HEADER_ONLY

将其更改为:

// Uncomment this to switch to header-only version
#define PUGIXML_HEADER_ONLY

现在,您无需直接包含pugixml.cpp,标题将成为 selfsunconted

我相信这个错误是链接器错误。这意味着您添加了函数声明,但没有添加函数定义。

因此,下载'pugixml'并列出qt中的pugixml.cpp源文件。功能定义应在此.CPP文件中。

然后,您的编译器将能够找到功能的定义。

它应该解决问题。

相关内容

  • 没有找到相关文章

最新更新