2013-12-06 2 views
0

Я никогда не добавлял библиотеку в Dev-C++. Я прочитал руководство here.Как использовать pugixml в Dev-C++

Поэтому я добавил две строки кода в мой файл CPP:

#include "pugixml.hpp" 
#include "pugiconfig.hpp" 

Но я получаю ошибки, как это:

[Linker error] C:\Users\MATRIX~1\AppData\Local\Temp\ccYfRAuS.o:2.visualizza tutto.cpp:(.text+0xbc): undefined reference to `pugi::xml_document::xml_document()' 

Может кто-нибудь сказать мне, как это сделать в Dev-C++? Мне нужно создать простую программу, которая читает XML, который я создал.

+1

В чем проблема? Нет никакой разницы между devC++ или любым другим C++ editor/ide/компилятором относительно синтаксиса include. Вы забыли? –

+0

@DmitryLedentsov Это ошибка компоновщика, что означает, что синтаксиса не возникает. Связывание выполняется после проверки синтаксиса. Обычно это означает, что вы забыли написать реализацию функции или опечатать ее заголовок, или ваш компилятор не знает, где выполняется реализация (в данном случае). – leewz

ответ

0

Вам необходимо добавить библиотеки pugixml. В Dev-C++ перейдите к настройкам компоновщика вашего проекта и найдите файлы pugixml .lib и добавьте их.

+1

Чтобы развернуть: В общем, с внешними библиотеками есть заголовочные файлы (объявляющие вещи), и есть объект (а не объекты C++) код (определяющий эти вещи). Поскольку один и тот же заголовочный файл может иметь разные реализации, вы должны указать Dev-C++ на скомпилированный код. – leewz

+0

В pugixml zip-файле нет pugixml .lib. У меня есть файлы .hpp и .cpp. – newtphp

+0

Возможно, вам нужно скомпилировать библиотеку. Кроме того, вы можете попытаться найти предварительно скомпилированную версию. – austin

0

Вам не нужен .lib-файл, вам необходимо добавить pugixml.cpp в компиляцию. В меню Dev-C++ выберите «Проект» -> «Добавить в проект ...» и выберите pugixml.cpp.