Seite 1 von 1

Probleme mit MinGW unter Qt 3.3.7

Verfasst: 12. Januar 2007 13:57
von Robby3d
Ich habe ein Problem mit Qt 3.3.7 (commercial version, Trio-Pack) und MinGW (gcc 3.4.5, win32-API V 3.6, mingw32-make V 3.80, mingw-runtime V 3.9, mingw-utils V 0.3).

Der qmake funktioniert ohne Probleme.
Aufruf: qmake aclock.pro -spec win32-g++

Aber der make-Befehl von MinGW liefert immer die Meldung "multiple target patterns".

Aufruf: make -f Makefile

Und das immer an der gleichen Stelle im erzeugten makefile:
aclock.pro ..\..\.qmake.cache C:\Qt3\mkspecs\win32-g++\qmake.conf

Ich habe versucht die Examples von qt damit zu erstellen (aclock im obigen Beispiel), aber es kommt immer in dieser Zeile des makefiles die obige Fehlermeldung, der make bricht dann mit einem "stop" ab.

Mein Qt habe ich mit MS VC6 erstellt, welches ebenfalls installiert ist (hier vielleicht ein mögliches Problem?).

Mein System: WinXP (SP2), Visual Studio 6 (SP6), Qt 3.3.7
PC: AMD Athlon64 +3000, 1 GB RAM, NVIADIA FX 5200

Anbei das makefile von aclock, welches ich mit "qmake aclock.pro -spec win32-g++" erstellt habe.

Kann mir in dieser Sache jemand helfen?
Vielen Dank im Voraus,
Robby

Verfasst: 12. Januar 2007 17:55
von Christian81
das make-.Programm von mingw heisst nicht 'make' sondern 'mingw32-make' !!

Verfasst: 12. Januar 2007 18:51
von Robby3d
Ok, das hätte ich vielleicht erwähnen sollen, daß ich das mingw32-make.exe in make.exe umbenannt habe, weil ich so konformer zu allen anderen make-Befehlen aus meinem IDE heraus aufrufen kann. Das IDE ist plattformunabhängig (da mit Qt entwickelt) und von daher sind einheitliche Befehlsnamen eine gute Sache.

Da der Build-Aufruf für g++ unter UNIX, MAX OS X und LINUX eben make heißt, habe ich ihn für meine Zwecke unter Windows eben auch so benannt.

Dies ist aber irrelevant, da der Fehler auch mit dem Aufruf des Originaldateinamens "mingw32-make" auftritt.

Verfasst: 12. Januar 2007 19:02
von Christian81
Wird dann auch die richtige make.exe aufgerufen? ist MSys ggf. im PATH?
Ich kann keinen Unterschied feststellen - bei mir fängt g++ mit kompilieren an. mingw32-make ist bei mir in der Version 3.81

Verfasst: 12. Januar 2007 20:07
von Robby3d
Ja, es wird definitiv die richtige make.exe aufgerufen.
Hmm...bei mir ist es die Version 3.80.
Ich habe extra einen neuen Useraccount angelegt, um die Umgebungsvars nochmal übersichtlich setzen zu können. Bin jetzt ziemlich ratlos, wenn es bei Dir läuft. Arbeitest Du auch mit Qt3.3.7?

Verfasst: 12. Januar 2007 20:11
von Christian81
Dann probiere doch mal 3.81 - gibt's doch auf sf.net/projects/mingw
Ich benutze Q../free in der Version 3.3.7 - sie unterscheidet sich aber bzgl. qmake überhaupt nicht zur kommerziellen Version.

Verfasst: 12. Januar 2007 22:09
von Robby3d
Hmm, ich finde die 3.81 von make nicht. Hast da eine direkte Adresse parat oder ist das in einem Package drin?

Der Hinweis mit der Qt-Free-Version ist wichtig, denke ich. Ich teste es mal mit der OpenSource-Variante von Qt zur Sicherheit.

Vielen Dank erstmal, ich melde mich dann.
Robby

Verfasst: 12. Januar 2007 22:14
von Christian81
Ich habe es auf die Schnelle auch nicht gefunden, aber hier ein Direktlink: http://heanet.dl.sourceforge.net/source ... 1-1.tar.gz
Es gibt keine offizielle Qt3/gpl-Version von Trolltech. Und die Version die ich benutze erzeugt 99,99%ig die gleichen Makefiles wie Deine Version :)

Verfasst: 15. Januar 2007 14:18
von Robby3d
Super, danke für den Direktlink. Hab's installiert, aber leider keine Änderung. Da scheint etwas anderes zu klemmen. Ich hab jetzt folgenden Test gemacht: Wenn ich das open-source-Packet von Qt4 aufspiele und mit MinGW erstelle, läuft's perfekt. Muß vielleicht qt3 dann auch mit MinGW erstellt werden, anstatt mit VC6?

Verfasst: 15. Januar 2007 14:24
von Christian81
Robby3d hat geschrieben:Muß vielleicht qt3 dann auch mit MinGW erstellt werden, anstatt mit VC6?
Der Compiler muss auf alle Fälle der gleiche sein - sonst wird es nichts (das klappt bei keinem C++-Projekt). Allerdings sollte sich das nicht schon beim Makefile bemerkbar machen...