websofter
@websofter
Programmer...

Оiибка при подключении QDomDocument в Qt

У меня 2 проекта Qt с чтением xml на основе класса QDomDocument, который я подключил как #include<QDomDocument>.

Пытаюсь тоже самое сделать и во втором проекте, но не тут -то было и отказывается подключать библиотеку как #include <QDomDocument>, но Qt его не находит , но находит и подключается как #include <QtXml/QDomDocument> и тут еще проблемка вылезла - qt отказывается создавать объект QDomDocument и выводит следующее

f509755a4c4b4777b5cbd5363982796c.png

В консоли тоже сплошная магия:
07:27:07: Выполняются этапы для проекта Formula...
07:27:08: Настройки не изменились, этап qmake пропускается.
07:27:08: Запускается: «C:\Qt\Tools\mingw48_32\bin\mingw32-make.exe» 
C:/Qt/Tools/mingw48_32/bin/mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'C:/Qt/Tools/QtCreator/bin/build-Formula-Desktop_Qt_5_2_1_MinGW_32bit-Debug'
g++ -Wl,-subsystem,windows -mthreads -o debug\Formula.exe debug/main.o debug/mainwindow.o debug/moc_mainwindow.o  -lglu32 -lopengl32 -lgdi32 -luser32 -lmingw32 -lqtmaind -LC:\Qt\5.2.1\mingw48_32\lib -lQt5Widgetsd -lQt5Guid -lQt5Cored 
debug/mainwindow.o: In function `Z8readDatav':
Makefile.Debug:80: recipe for target 'debug\Formula.exe' failed
mingw32-make[1]: Leaving directory 'C:/Qt/Tools/QtCreator/bin/build-Formula-Desktop_Qt_5_2_1_MinGW_32bit-Debug'
makefile:34: recipe for target 'debug' failed
C:\Qt\Tools\QtCreator\bin\build-Formula-Desktop_Qt_5_2_1_MinGW_32bit-Debug/../Formula/mainwindow.cpp:26: undefined reference to `_imp___ZN12QDomDocumentC1Ev'
C:\Qt\Tools\QtCreator\bin\build-Formula-Desktop_Qt_5_2_1_MinGW_32bit-Debug/../Formula/mainwindow.cpp:26: undefined reference to `_imp___ZN12QDomDocumentD1Ev'
collect2.exe: error: ld returned 1 exit status
mingw32-make[1]: *** [debug\Formula.exe] Error 1
mingw32-make: *** [debug] Error 2
07:27:10: Процесс «C:\Qt\Tools\mingw48_32\bin\mingw32-make.exe» завершился с кодом 2.
Ошибка при сборке/установке проекта Formula (комплект: Desktop Qt 5.2.1 MinGW 32bit)
Во время выполнения этапа «Сборка»
07:27:10: Прошло времени: 00:03.

Задача банальная - создать в mainwindow.cpp объект QDomDocument:
QString libPath = "C:\\library.xml";
void readData(void)
{
    //The QDomDocument class represents an XML document.
    QDomDocument xmlBOM;
    // Load xml file as raw data
     /*QFile f(libPath);

    if (!f.open(QIODevice::ReadOnly ))
    {
        qDebug("Не удалось загрузить файл");
    }else
    {
        qDebug("Файл удачно загружен");
    }
    */
}

В чем может быть проблема?
  • Вопрос задан
  • 3349 просмотров
Решения вопроса 1
EXL
@EXL
Энтузиаст
Читайте Assistant и Qt-документацию. Проблему должно исправить добавление строки:

QT += xml
В ваш проектный файл "*.pro". Никакой магии тут нет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы