0

当我尝试执行简单的 tinylibxml 程序时出现错误。

操作系统 -> Ubuntu IDE -> e 我已经通过 apt-get install 下载了 libtinyxml 并将标题包含在我的程序中但我仍然收到错误示例代码粘贴在下面

#include "tinyxml.h"
#define TIXML_USE_STL
#include <tinyxml.h>
void dump_to_stdout(const char* pFilename);

int main()
{
 dump_to_stdout("example1.xml");
 return 0;
}

void dump_to_stdout(const char* pFilename)
{
 TiXmlDocument doc(pFilename);
 bool loadOkay = doc.LoadFile();
 if (loadOkay)
 {
  printf("\n%s:\b", pFilename);
 }
 else
 {
  printf("Failed to load file \"%s\"\n", pFilename);
 }
}

因为,我做了谷歌搜索,我发现我需要包含 libtinyxml.cpp 和更多文件。各位大侠,请指导我如何做到这一点。

谢谢

4

2 回答 2

1

在构建时,您需要执行类似的操作

g++ -c mycode.cpp(假设您的源文件是 mycode.cpp)

这应该生成 mycode.o

你现在需要做:

g++ -o mycode -ltinyxml mycode.o

这是链接步骤。这会将您编译的源文件与 tinyxml 库结合起来,生成最终的可执行二进制 mycode。

对于简单的东西,您可以一步编译和链接,但对于更复杂的东西,您需要将这些步骤分开。

所有这些都可以使用 amake和 a自动化Makefile

查看The GCC Manual以获取有关编译器选项的更多信息。

于 2010-12-03T14:47:18.317 回答
0

tinyxml 附带一个 makefile,运行它来构建库,然后将该库包含在链接行中。

编辑:@doron 为您提供了“链接库”的说明:)

于 2010-12-03T14:47:31.473 回答