Seite 1 von 1

#include <QHttp>

Verfasst: 24. November 2006 18:09
von joebar
Sollte lt. Qt Docu der Include sein, ich bekomme:

testapp.cpp:7:17: error: QHttp: No such file or directory

Hat jemand eine Idee?

(nutze Qt4)

Danke,
J.

Verfasst: 24. November 2006 18:41
von upsala
Ja, .pro-File: config+=network

Verfasst: 25. November 2006 06:48
von joebar
Mmmmh,

1. Wieso muss sowas machen damit der Compiler ein include findet?
2. Wieso steht das nicht in der Doku?
3. Helfen tut es nichts...

Code: Alles auswählen

######################################################################
# Automatically generated by qmake (2.00a) Wed Nov 22 15:12:57 2006
######################################################################

TEMPLATE = app
TARGET += 
DEPENDPATH += .
INCLUDEPATH += .
config += network

# Input
HEADERS += testapp.h
FORMS += testapp.ui
SOURCES += main.cpp testapp.cpp
Danach mit qmake ein Makefile erstellt und die Fehlermeldung ist die selbe.

Verfasst: 25. November 2006 08:19
von upsala
Tschuldigung, falsche Varible erwischt. QT+=network Und es steht in der Doku, für jedes Modul einzeln...

Verfasst: 25. November 2006 08:55
von BartSimpson
ganz oben steht zu welchem Module die Klasse gehört. Ein Klick auf den Verweis und im Teil "Configuring the Build Process" steht was zu beachten ist:)

Verfasst: 26. November 2006 01:30
von joebar
ah okay jetzt klappts. Danke.

Warum macht das Sinn? Das widerspricht doch dem Sinn des Generierns von make/pro Files.

Also in der API Referenz zu QHttp steht davon nichts, was schon mal saubloed ist. Mit ein wenig Googeln findet es man dann auch, schon sehr seltsam.

Verfasst: 26. November 2006 08:36
von upsala
In der Doku von QHttp steht, daß es zum QtNetwork-Modul gehört (sogar schon in der Überschrift) und dort steht die Config-Option.

Außerdem, wenn du 2 Verschiedene Versionen deines Programms ausliefern willst, einmal ohne, einmal mit Netzwerkanbindung, woher soll qmake wissen welche es gerade generieren soll?

Verfasst: 26. November 2006 17:20
von joebar
Naja, ich finde die Info so wichtig, dass sie direkt auf http://doc.trolltech.com/4.1/qhttp.html stehen sollte und nicht dass zu einem Model gehoert und man dann das ganze erst lesen muss. Dann passiert - zumindest dem Anfaenger - genau was mir passiert.

Angenommen ich will mein Programm ohne http ausliefern, wie so soll das klappen? compelieren klappt ja nicht. Das Argument verstehe ich nicht.

Verfasst: 26. November 2006 17:42
von Christian81
joebar hat geschrieben:Naja, ich finde die Info so wichtig, dass sie direkt auf http://doc.trolltech.com/4.1/qhttp.html stehen sollte und nicht dass zu einem Model gehoert und man dann das ganze erst lesen muss. Dann passiert - zumindest dem Anfaenger - genau was mir passiert.
Hätte man sich mit den Qt-Modulen auseinandergesetzt (was man als Anfänger eigentlich machen sollte bevor man mit Programmieren anfängt), hätte man gewusst dass jedes Modul ein QT += modulname benötigt... :roll:

Verfasst: 26. November 2006 17:53
von upsala
Angenommen ich will mein Programm ohne http ausliefern, wie so soll das klappen? compelieren klappt ja nicht. Das Argument verstehe ich nicht.
Nur weil du es nicht kannst, heist noch lange nicht, daß es nicht geht:

Code: Alles auswählen

#if MIT_NETZWERK
#endif

Verfasst: 26. November 2006 19:27
von joebar
Danke, das das geht ist mir auch klar. Dann kann ich das include auch in ein if reinhaengen, das erklaert nicht warum man das mit dem pro File machen sollte damit das include erkannt wird.

Verfasst: 26. November 2006 19:44
von Christian81
joebar hat geschrieben:Danke, das das geht ist mir auch klar. Dann kann ich das include auch in ein if reinhaengen, das erklaert nicht warum man das mit dem pro File machen sollte damit das include erkannt wird.
Was ist so schwer daran zu verstehen dass man, wenn man ein Modul benutzen möchte, dieses auch im pro-File angeben muss? Es hat eben nicht nur was mit dem Header zu tun. Da passiert noch einiges anderes was Du gar nicht mitbekommst.