Seite 1 von 1

QtXml angeblich nicht gefunden, ist aber gelogen

Verfasst: 15. April 2009 11:40
von Der Mann aus der Kugel
Hi zusammen,

erstmal vielen Dank für die Hilfe letzte Woche, bin vorher nicht zum schreiben gekommen: Meine Fragen zu pixmap und formulareinbinden sind beide exakt beantwortet worden, alles funktioniert jetzt!

Jetzt habe ich folgendes Problem. Ich will einen XML-Parser schreiben, dazu habe ich das Beispiel aus dem OSPress-Buch Qt4 exakt übernommen, bevor ich es später anpasse:

Code: Alles auswählen

#include <QtCore>
#include <QtXml>
#include <iostream>

using namespace std;

int main(int argc, char* argv[]) {

	QCoreApplication app(argc, argv);
	QFile file("xml.xml");
	QByteArray content = file.readAll();
	QDomDocument doc;
	QString errorMessage;
	QDomDocumentType type = doc.doctype();
	cout << "Typ: " << qPrintable(type.name()) << endl;
	QDomElement root = doc.documentElement();
	if(root.hasAttribute("xmnls")) {
		QDomAttr attr = root.attributeNode("xmlns");
		cout << "xmlns: " << qPrintable(attr.value()) << endl;
	}

	if(root.hasAttribute("lang")) {
		QDomAttr attr = root.attributeNode("lang");
		cout << "sprache: " << qPrintable(attr.value()) << endl;
	}

	QDomNode node = root.firstChild();
	while (!node.isNull()) {
		if(node.isElement()) {
		QDomElement elem = node.toElement();
		cout << "Kind von Root: " << qPrintable(elem.tagName()) << endl;
		cout << "Dessen Text: " << qPrintable(elem.text()) << endl;
		}
		node = node.nextSibling();
	}
}
make meldet hierzu:

main.cpp:2:17: Fehler: QtXml: No such file or directory
main.cpp: In function »int main(int, char**)«:
main.cpp:12: Fehler: »QDomDocument« wurde in diesem Gültigkeitsbereich nicht definiert

es folgen entsprechend weitere Definitions-Fehler

Wenn ich Zeile 2 ersetze durch

Code: Alles auswählen

#include </usr/include/qt4/Qt/QtXml>
weil ich mich für ganz schlau halte, haut er mir eine million fehler der gestalt

/home/daniel/Desktop/xml2/main.cpp:12: undefined reference to `QDomDocument::QDomDocument()'

um die ohren.

was verplan ich diesmal wieder beim linken :D

danke im voraus![/code]

Verfasst: 15. April 2009 12:13
von Christian81

Verfasst: 15. April 2009 14:15
von Der Mann aus der Kugel
Danke, klappt!!!