Fehler bei Kompilierung?

Verschiedenes zu Qt
Antworten
Totti
Beiträge: 2
Registriert: 3. März 2006 11:37

Fehler bei Kompilierung?

Beitrag von Totti »

Hallo,
nach erfolgreicher Installation des OpenSource QT 4.1.1 unter Win2k versuche ich gerade ganz simpel das Beispiel "Hello World" unter "..\examples\tutorials\t1" neu zu kompilieren. An dem Quellcode wurde nichts verändert, das Makefile wurde auch nicht neu generiert.
Ein "make" führt zu:
"MAKE Version 5.2 Copyright (c) 1987, 1998 Inprise Corp.
Fatal: 'FORCE' does not exist - don't know how to make it"

Ein "mingw32-make" führt zu:
"mingw32-make -f Makefile.Debug all
mingw32-make[1]: Entering directory `C:/QT/4.1.1/examples/tutorial/t1'
g++ -mthreads -Wl,-enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runt
ime-pseudo-reloc -Wl,-subsystem,windows -o "debug\t1.exe" tmp\obj\debug_shared\m
ain.o -L"C:\Qt\4.1.1\lib" -L"C:\Qt\4.1.1\lib" -lmingw32 -lqtmaind -lQtGuid4 -lQ
tCored4
C:\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\..\mingw32\bin\ld.exe: cannot fin
d -lQtGuid4
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\t1.exe] Error 1
mingw32-make[1]: Leaving directory `C:/QT/4.1.1/examples/tutorial/t1'
mingw32-make: *** [debug-all] Error 2"

Weil es sich um schon vorgefertigte Beispiele handelt, und auch die ausführbare Datei schon vorhanden ist, das fertige Programm also läuft, sind bestimmt ganz grundsätzliche Einstellungen nicht in Ordnung.
Welche Einstellungen könnten bei mir nicht korrekt sein?

Gruß
Thorsten
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

'make' ist falsch - das ist das Make von Borland
'mingw32-make' ist richtig.
Soweit ich weiss werden die debug-libs im Installer nicht mitgeliefert (schau mal ob Du irgendwas Richtung QtGuiD4 in qt-4/lib findest).
Also entweder die Debug libs bauen lassen oder das pro-File so modifzieren dass nur release erstellt wird (CONFIG -=debug_and_release debug , CONFIG += release)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
haku
Beiträge: 4
Registriert: 4. März 2006 10:19
Wohnort: Zürich

Beitrag von haku »

hallo

Ich habe genau das gleiche Problem! Hast du es lösen könnnen? Falls ja, was muss man tun? Leider bin ich noch blutiger Anfänger (hab gerade mein erstes Halbjahr "Einführung in C++" hinter mir und deshalb hab ich keine Ahnung wie und wo man die Debug libs baut oder ähnliches. Ich wäre also froh, wenn mir jemand sagen könnte, was wo und wie zu tun ist. Oder wo kann ich das allenfalls nachschlagen, woher wisst Ihr das eigentlich alles?? Besten Dank für die Hilfe.

Gruss, haku
madRenEGadE
Beiträge: 52
Registriert: 10. Februar 2006 15:15

Beitrag von madRenEGadE »

das prob hatte ich auch entweder ihr macht im makefile aus dem

-lqtmaind -lQtGuid4 -lQtCored4

das hier: -lqtmain -lQtGui4 -lQtCore4

oder ich kopiert die dateien und nennt sie um

zb: libQtCore4.a -> libQtCored4.a
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

madRenEGadE hat geschrieben:das prob hatte ich auch entweder ihr macht im makefile aus dem

-lqtmaind -lQtGuid4 -lQtCored4

das hier: -lqtmain -lQtGui4 -lQtCore4

oder ich kopiert die dateien und nennt sie um

zb: libQtCore4.a -> libQtCored4.a
Und wundert euch dann über seltsame Abstürze... *lol*
Was ist so schwer ./configure und dann mingw32-make aufzurufen?
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
madRenEGadE
Beiträge: 52
Registriert: 10. Februar 2006 15:15

Beitrag von madRenEGadE »

warum sollte es dann zu abstürzen kommen wenn sie einfach nicht die debug libs linken? bei der sache mit dem umbenennen kann ich mir das ja noch vorstellen....
haku
Beiträge: 4
Registriert: 4. März 2006 10:19
Wohnort: Zürich

Beitrag von haku »

Was ist so schwer ./configure und dann mingw32-make aufzurufen?

naja, daran ist ja eigentlich nichts schwer, ABER: wenn ich nach der installation configure aufrufe dann dauert es etwa 15min und fertig. wenn ich danach aber mingw32-make aufrufe, dann dauert es stunden und hört erst auf, wenn kein speicherplatz mehr vorhanden ist ... was hab ich denn falsch gemacht?

Oder was muss ich jetzt tun? Bin schon seit drei Tagen dran, hab bald keine Kraft mehr ... :(
haku
Beiträge: 4
Registriert: 4. März 2006 10:19
Wohnort: Zürich

Beitrag von haku »

-lqtmaind -lQtGuid4 -lQtCored4

das hier: -lqtmain -lQtGui4 -lQtCore4

oder ich kopiert die dateien und nennt sie um

zb: libQtCore4.a -> libQtCored4.a


hab das jetzt alles gemacht. wenn ich danach make ausführe erhalte ich folgende meldung:

mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory 'C:/test'
mingw32-make[1]: Nothing to be done for 'first'.
mingw32-make[1]: Leaving directory 'C:/test'

was hab ich denn da falsch gemacht? oder was muss ich eigentlich machen, nachdem ich Makefile.Debug modifiziert habe??

danke für die hilfe, haku
madRenEGadE
Beiträge: 52
Registriert: 10. Februar 2006 15:15

Beitrag von madRenEGadE »

mingw32-make[1]: Nothing to be done for 'first'. bedeutet das sich durch ein erneutes "maken" nicht verändern würde.... willst du denn unbedingt Qt als debug laufen haben?
haku
Beiträge: 4
Registriert: 4. März 2006 10:19
Wohnort: Zürich

Beitrag von haku »

ich hab eigentlich keine ahnung was du meinst. ich möchte einfach das Qt bei mir läuft. hab nur das befolgt was mir hier geraten wurde. bin wirklich nur Anfänger ...
Totti
Beiträge: 2
Registriert: 3. März 2006 11:37

Beitrag von Totti »

Hallo alle...
eingehend auf meine Frage, kann ich verkünden, daß der Fehler bei der Kompilierung tatsächlich in der Namenskonvention lag. Beim "Makefile.Debug" bekommen die -(libraries) alle ein "d" im Namen, die existieren natürlich erstmal nicht. Nach dem Umbenennen der Namen im "Makefile.Debug" verlief die Übersetzung einwandfrei.
Gruß und Danke
Antworten