Seite 1 von 2

Problem bei der Installation von Qt4 unter Windows XP

Verfasst: 27. Oktober 2007 18:28
von TheProgrammer
Hi,

ich wollte heute Qt4 installieren, also hab ichs runter geladen und installiert, bin vorbildlich mit der Konsole ins Verzeichnis gewechselt und hab configure.exe -release aufgerufen. Anstatt dass er mich fragt ob ich mit der Lizens einverstanden bin und dann anfängt zu bauen bekomm ich solch ein Ergebnis: Bild

Ich hab schon einiges versucht allerdings brachte nichts davon ein brauchbares Ergebnis.

Ich bitte um Hilfe und bin für jegliche dankbar
TheProgrammer

Verfasst: 27. Oktober 2007 20:42
von Volker
Du hast einiges versucht? Was denn?
Ich würde als erstes mal versuchen den Grund der Fehlermeldung zu beseitigen und eine Plattform angeben für die Du Qt übersetzen willst.

Verfasst: 28. Oktober 2007 13:29
von TheProgrammer
das hab ich auch schon versucht aber irgendwie kommt immer wieder dasselbe.
Wäre jemand so freundlich mir den Befehl zu sagen wie ich das ganze für MinGW und Windows mit configure einrichten kann. Für dumme sozusagen ;-)

Vielen dank

Verfasst: 28. Oktober 2007 14:15
von Christian81
Naja, wenn configure keinen Compiler im PATH findet, kann er auch nicht wissen welchen er nehmen soll...

Verfasst: 28. Oktober 2007 14:41
von TheProgrammer
Ich hatte aber das Installerpaket mit MinGW runtergeladen und installiert und der hat MinGW gezogen und ich hab den Pfad dazu dort angegeben. Also sollte er den Pfad normalerweise kennen. Wie kann ich in der Konsole aber den Pfad zum Compiler erneut explizit setzen?

Verfasst: 28. Oktober 2007 15:38
von Christian81
Umgebungsvariable PATH anpassen

Verfasst: 3. November 2007 15:11
von TheProgrammer
Vielen dank.
Die umgebungsvariable wurde scheinbar bei der Installation nicht richtig gesetzt. Ich hab sie nun angepasst und ich konnte configure ausführen.
Ich hab dann in Dev C++ die Header eingetragen, das Makefile erzeugt und eingetragen und ...
es geht immer noch nicht.
Seltsamerweise findet er einige Header nicht obwohl sie da sind ich hab bei allen nachgeschaut.

Ich poste hier mal den Compiler Log:
Compiler: Default compiler
Executing make...
make.exe -f "Makefile.win" all
g++.exe -c main.cpp -o main.o -I"D:/QtEver/a/include/Qt" -I"D:/QtEver/a/include/Qt3Support" -I"D:/QtEver/a/include/QtAssistant" -I"D:/QtEver/a/include/QtCore" -I"D:/QtEver/a/include/QtDBus" -I"D:/QtEver/a/include/QtDesigner" -I"D:/QtEver/a/include/QtGui" -I"D:/QtEver/a/include/QtNetwork" -I"D:/QtEver/a/include/QtOpenGL" -I"D:/QtEver/a/include/QtScript" -I"D:/QtEver/a/include/QtSql" -I"D:/QtEver/a/include/QtSvg" -I"D:/QtEver/a/include/QtTest" -I"D:/QtEver/a/include/QtUiTools" -I"lib/gcc/mingw32/3.4.2/include" -I"include/c++/3.4.2/backward" -I"include/c++/3.4.2/mingw32" -I"include/c++/3.4.2" -I"include" -I"D:/QtEver/a/include/Qt" -I"D:/QtEver/a/include/Qt3Support" -I"D:/QtEver/a/include/QtAssistant" -I"D:/QtEver/a/include/QtCore" -I"D:/QtEver/a/include/QtDBus" -I"D:/QtEver/a/include/QtDesigner" -I"D:/QtEver/a/include/QtGui" -I"D:/QtEver/a/include/QtNetwork" -I"D:/QtEver/a/include/QtOpenGL" -I"D:/QtEver/a/include/QtScript" -I"D:/QtEver/a/include/QtSql" -I"D:/QtEver/a/include/QtSvg" -I"D:/QtEver/a/include/QtTest" -I"D:/QtEver/a/include/QtUiTools" -I"D:/QtEver/a/include/QtXml"

In file included from D:/QtEver/a/include/QtGui/qapplication.h:1,
from D:/QtEver/a/include/QtGui/qapplication:1,
from main.cpp:1:
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:42:37: QtCore/qcoreapplication.h: No such file or directory
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:43:31: QtGui/qwindowdefs.h: No such file or directory
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:44:27: QtCore/qpoint.h: No such file or directory
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:45:26: QtCore/qsize.h: No such file or directory
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:46:27: QtGui/qcursor.h: No such file or directory
In file included from D:/QtEver/a/include/QtGui/qapplication.h:1,
from D:/QtEver/a/include/QtGui/qapplication:1,
from main.cpp:1:

D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:59: error: `QT_BEGIN_HEADER' does not name a type
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:79: error: invalid function declaration

In file included from D:/QtEver/a/include/Qt/QFont.h:1,
from main.cpp:2:
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:43:28: QtCore/qstring.h: No such file or directory
In file included from D:/QtEver/a/include/Qt/QFont.h:1,
from main.cpp:2:
D:/QtEver/a/include/QtGui/../../src/gui/kernel/qapplication.h:358: error: `QT_END_HEADER' does not name a type
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:59: error: invalid function declaration
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:271: error: `QFont' has not been declared

D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:272: error: non-member function `bool bold()' cannot have `const' method qualifier
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: In function `bool bold()':
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:272: error: `weight' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:272: error: (Each undeclared identifier is reported only once for each function it appears in.)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:272: error: `Normal' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: At global scope:
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:275: error: `QFont' has not been declared
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: In function `void setBold(bool)':
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:276: error: `Bold' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:276: error: `Normal' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:276: error: `setWeight' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: At global scope:
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:278: error: `QFont' has not been declared
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:279: error: non-member function `bool italic()' cannot have `const' method qualifier
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: In function `bool italic()':
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:280: error: `style' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:280: error: `StyleNormal' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: At global scope:

D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:283: error: `QFont' has not been declared
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: In function `void setItalic(bool)':
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:284: error: `StyleItalic' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:284: error: `StyleNormal' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:284: error: `setStyle' undeclared (first use this function)
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h: At global scope:
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:293: error: expected init-declarator before '&' token
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:293: error: expected `,' or `;' before '&' token
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:294: error: expected init-declarator before '&' token
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:294: error: expected `,' or `;' before '&' token

In file included from D:/QtEver/a/include/Qt/QPushButton.h:1,
from main.cpp:3:
D:/QtEver/a/include/Qt/../../src/gui/widgets/qpushbutton.h:42:35: QtGui/qabstractbutton.h: No such file or directory
In file included from D:/QtEver/a/include/Qt/QPushButton.h:1,
from main.cpp:3:
D:/QtEver/a/include/Qt/../../src/gui/text/qfont.h:297: error: `QT_END_HEADER' does not name a type
D:/QtEver/a/include/Qt/../../src/gui/widgets/qpushbutton.h:52: error: invalid function declaration
main.cpp:5: error: expected constructor, destructor, or type conversion before "int"
main.cpp:5: error: expected `,' or `;' before "int"

make.exe: *** [main.o] Error 1

Execution terminated
und hier mal den Miniquelltext:

Code: Alles auswählen

#include <qapplication>
#include <QFont.h>
#include <QPushButton.h>

int main(int argc, char *argv[])
{
    QApplication    app(argc, argv);
    QPushButton     quit("Servus Welt!");

    quit.resize(200, 30);
    quit.setFont(QFont("Arial", 18, QFont::Bold));
    QObject::connect(&quit, SIGNAL(clicked()), &app, SLOT(quit()));
    quit.show();

    return app.exec();
}

Wisst ihr woran es liegt?
Ich bin wie immer für jede Hilfe dankbar

TheProgrammer

Verfasst: 3. November 2007 15:20
von Christian81
qt-4/include/ fehlt als includepath. Benutz qmake - dort wird alles korrekt gesetzt...

Verfasst: 3. November 2007 15:34
von TheProgrammer
Vielen dank schonmal für deine schnelle Antwort :D

Ich hab den Pfad aber eingetragen. Siehe hier:

Bild

Also a hieß früher 4.3.2 aber wenn ich mit der Konsole ins Verzeichnis wechseln wollte kam der mit den Punkten nicht klar also hab ichs einfach in a umbenannt! Daran kanns aber eh nicht liegen, weil die drei Header außem Qelltext findet er ja, nur die Header nicht, welche von den inkludierten Headern inkludiert werden kann er nicht finden (^^).

Hat jemand eine Antwort?

TheProgrammer

EDIT:
Was meinst du jetzt mit Ort? Qt4/Include? Der Projektordner? einfach den Qt4 Ordner?

EDIT2:
Ich hab jetzt qmake im Projektordner ausgeführt und er hat die Pfade angepasst. Aber es funktioniert immer noch nicht!

Verfasst: 4. November 2007 12:56
von wintermute
Bau mal in das qmake-file

QT += qt3support

mit ein und versuch es dann noch einmal.
du bindest die header noch nach qt3-standard ein, so mit dem ".h" am ende.

in Qt4 wird das aber, c++ komform, nicht mehr gemacht:

#include <QtGui>
#include <QPixmap>
#include <QGraphicsView>

Wenn er dann immer noch nicht kompiliert, guck mal mit set, ob
QTDIR=C:\Qt\4.3.0
und
QMAKESPEC=win32-g++
gesetzt sind.

regards

Verfasst: 4. November 2007 12:57
von Christian81
@wintermute: Hinschauen! Das sind die qt-eigenen header. Und .h geht immer noch ohne irgendwelche Tricks - warum auch nicht :)

Verfasst: 4. November 2007 13:19
von wintermute
@christian81: richtig, stimmt, gerade mal ausprobiert.

was in seinem Mini-Proggi aber nicht gehen darf:

#include <qapplication>
#include <QFont.h>
#include <QPushButton.h>

da schmeisst er bei mir unter Linux mit Qt 4.3.0

main.cpp:3:25: error: qapplication: Datei oder Verzeichnis nicht gefunden
main.cpp:4:21: error: QFont.h: Datei oder Verzeichnis nicht gefunden
main.cpp:5:26: error: QPushButton.h: Datei oder Verzeichnis nicht gefunden

raus.

so gehts:

#include <QApplication>
#include <qfont.h>
#include <qpushbutton.h>

prob gelöst? :)

Das hat so aber keinen Stil... ;)

regards

Verfasst: 4. November 2007 16:20
von TheProgrammer
vielen dank für die Hilfe aber auch so gehts nicht:

Code: Alles auswählen

#include <QApplication> 
#include <qfont.h> 
#include <qpushbutton.h>

int main(int argc, char *argv[]) 
{
    QApplication    app(argc, argv);
    QPushButton     quit("Servus Welt!");

    quit.resize(200, 30);
    quit.setFont(QFont("Arial", 18, QFont::Bold));
    QObject::connect(&quit, SIGNAL(clicked()), &app, SLOT(quit()));
    quit.show();

    return app.exec();
}
Die selben Fehler wie oben :'-(
Langsam verzweifel ich ^^

Jemand noch ne Idee? Wäre sehr dankbar ;-)


TheProgrammer

Verfasst: 4. November 2007 16:38
von Christian81
Manchmal bin ich echt am verzweifeln... wie sieht deine .pro-Datei denn aus? Hänge mal dein ganzes Projekt hier ran.

Verfasst: 4. November 2007 18:54
von TheProgrammer
EDIT: Hab das Problem gelöst!

Obwohl ich in Dev C++ Qt/Include eingetragen hatte wars im Manifest nicht zu finden! Als ichs manuell eingetragen hab gings.

VIelen dank für eure Hilfe
TheProgrammer