Qt 4.1 und Visual C++ - Express 2005

Verschiedenes zu Qt
Poffelnator
Beiträge: 2
Registriert: 18. Mai 2006 14:45

Schritt 5 funzt nicht, weiß leider nicht warum?

Beitrag von Poffelnator »

ch erhalte bei Schritt 5 immer

../mkspecs/win32-msvc2005\qplatformdefs.h(30) : fatal error C1083: Datei (Includ
e) kann nicht geöffnet werden: "windows.h": No such file or directory
NMAKE : fatal error U1077: "E:\Coden\VisualStudio8\VC\BIN\cl.EXE": Rückgabe-Code
"0x2"

Erst scheint immer alles so zu laufen wie es soll, dann wird zweimal Code generiert und dann ist immer schluss. :-(

Wo liegt der Fehler, was mach ich falsch???
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Du hast das Platform-SDK nicht (richtig ) installiert -> Foren -Suche!
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
QtBerserker
Beiträge: 71
Registriert: 15. Mai 2006 09:07

qt-4.1.3 win32/msvc2k5 Build && 4dos

Beitrag von QtBerserker »

Beim Build unter der 4nt Console bekomme ich folgenden Fehler:

Code: Alles auswählen

Could not find mkspecs for your QMAKESPEC after trying:
        D:\Cpp\Qt\4.1.3\mkspecs
Error processing project file: src.pro
NMAKE : fatal error U1077: 'cd' : return code '0x3'
Stop.
Nach einigen Grübbeln und Probieren habe ich es im cmd Prompt auch probiert - und es läuft durch. Kennt jemand solche Unverträglichkeiten zwischen Qt und 4nt?? 4nt ist doch wesentlich komfortabler als cmd und ich möchte nur ungern verzichten ...

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

Beitrag von Christian81 »

Deine QMAKESPEC ist wohl nicht definiert.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
QtBerserker
Beiträge: 71
Registriert: 15. Mai 2006 09:07

Beitrag von QtBerserker »

Christian81 hat geschrieben:Deine QMAKESPEC ist wohl nicht definiert.
Yep, hatte wohl von Hand die QMAKESPEC richtig gemacht, und dann im batch ein Buchstabenwechsler ... Bei dem can't cd ... hätte ich genauer prüfen sollen ...
René
Beiträge: 75
Registriert: 15. August 2006 11:14
Kontaktdaten:

Beitrag von René »

@ shadow

Hi, erstmal vielen Dank für die Anleitung. Ich bin noch recht neu auf dem Gebiet der Qt-Entwicklung und habe noch drei Fragen.

1. Was soll das mit dem Plattform SDK von Microsoft ? Wofür braucht man das ? So wie ich das in der Qt3 Anleitung hier verstanden habe, benötige ich das nur, wenn ich Qt selbst aus Visual Studio heraus kompilieren möchte. Ist das korrekt ?

2. Ich habe Qt4.1.4 komplett in der Konsole kompiliert (nmake), ich habe auch kein Plattform SDK von Microsoft installiert und eigentlich läuft alles bestens. Ich kann einwandfrei meine Projekte kompilieren und die resultierenden *.exe Dateien ausführen. Nur erhalte ich immer eine Warnung beim Kompilieren meiner Projekte, eine Warnung, die im übrigen auch schon beim Kompilieren von Qt4.1.4 selbst auftauchte, und zwar:

Code: Alles auswählen

MSVCRTD.lib(cinitexe.obj) : warning LNK4098: Standardbibliothek "libcmtd.lib" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Bibliothek verwenden.
Inwiefern kann das zu Problemen führen und woran liegt das ?

3. Was ist nun genau der Unterschied zwischen der Variante mit dem SDK und aus Visual Studio heraus und der Variante ohne dem SDK und direkt in der Konsole. Welche Vorteile/Nachteile habe ich dadurch. Das ist mir noch nicht klar.

Vielen Dank für Eure Hilfe im voraus!
Mister_Crac
Beiträge: 28
Registriert: 10. August 2006 12:17

Beitrag von Mister_Crac »

René hat geschrieben: eine Warnung, die im übrigen auch schon beim Kompilieren von Qt4.1.4 selbst auftauchte, und zwar:

Code: Alles auswählen

MSVCRTD.lib(cinitexe.obj) : warning LNK4098: Standardbibliothek "libcmtd.lib" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Bibliothek verwenden.
Inwiefern kann das zu Problemen führen und woran liegt das ?
Genau diese Meldung habe ich auch eben bekommen. Naja mal schauen ob es trotzdem funktioniert soweit.
Hab es auch schon mit Eclipse probiert (siehe diesen Thread). Leider auch kein Glück :-(

EDIT:
Tja, nachdem es mit Eclipse nicht ging, geht es bei mir auch mit Visual Studio (.NET 2003) nicht. Laut Anleitung soll ich:
Um aus der UI Datei C++ Code zu machen, klickt man nun mit der rechten Maustaste auf die hinzugefügte Datei MainWindow.ui und wählt im sich öffnenden Popup Menü Eigenschaften. Dort klickt man in der linken Liste auf Benutzerdef. Buildschritt.
Was soll diese ominöse "linke Liste" sein, und wo sind die "Benutzerdef. Buildschritte"? Siehe Screenshot:

Bild

So. Ich probiere es jetzt noch ein letztes Mal mit Visual Studio .NET Express Edition, wenn es damit auch nicht geht, dann lass ich den Scheiß, kaufe mir noch eine Festplatte und installiere Linux. Dann eben mit KDevelop. Habe langsam die Schnauze voll von Anleitungen, die zwar gut gemeint sind, aber eben von Privatleuten und nicht von Trolltech-Offiziellen geschrieben sind. Wobei sich da eben die Frage stellt, warum nicht Trolltech selbst detaillierte Anleitungen veröffentlicht, wie man Eclipse, Borland, Visual Studio etc. mit Qt unter Windows zum Laufen bringt. Wollen die denn nicht, dass möglichst viele Leute Qt benutzen? Naja ich hab ihnen das mal per E-mail vorgeschlagen, vielleicht bekomme ich ja ne Antwort.
Bin genervt :-(
Shadow
Beiträge: 92
Registriert: 27. August 2005 18:15
Wohnort: Iserlohn
Kontaktdaten:

Beitrag von Shadow »

René hat geschrieben:@ shadow

Hi, erstmal vielen Dank für die Anleitung. Ich bin noch recht neu auf dem Gebiet der Qt-Entwicklung und habe noch drei Fragen.

1. Was soll das mit dem Plattform SDK von Microsoft ? Wofür braucht man das ? So wie ich das in der Qt3 Anleitung hier verstanden habe, benötige ich das nur, wenn ich Qt selbst aus Visual Studio heraus kompilieren möchte. Ist das korrekt ?

2. Ich habe Qt4.1.4 komplett in der Konsole kompiliert (nmake), ich habe auch kein Plattform SDK von Microsoft installiert und eigentlich läuft alles bestens. Ich kann einwandfrei meine Projekte kompilieren und die resultierenden *.exe Dateien ausführen. Nur erhalte ich immer eine Warnung beim Kompilieren meiner Projekte, eine Warnung, die im übrigen auch schon beim Kompilieren von Qt4.1.4 selbst auftauchte, und zwar:

Code: Alles auswählen

MSVCRTD.lib(cinitexe.obj) : warning LNK4098: Standardbibliothek "libcmtd.lib" steht in Konflikt mit anderen Bibliotheken; /NODEFAULTLIB:Bibliothek verwenden.
Inwiefern kann das zu Problemen führen und woran liegt das ?

3. Was ist nun genau der Unterschied zwischen der Variante mit dem SDK und aus Visual Studio heraus und der Variante ohne dem SDK und direkt in der Konsole. Welche Vorteile/Nachteile habe ich dadurch. Das ist mir noch nicht klar.

Vielen Dank für Eure Hilfe im voraus!
Die Plattform SDK ist bei den kommerziellen Versionen von VS 2005 automatisch mit enthalten. Bei der Express Editiion muss diese noch zusätzlich heruntergeladen werden. Du brauchst diese SDK, um Qt 4.x vernünftig auf deinem Rechner zu konfigurieren bzw. zu compilieren, jedenfalls was die OpenSource-Version betrifft. Spätestens wenn du etwas mit OpenGL und dergleichen machen willst, kommst du daran nicht mehr vorbei.
Die andere Variante, sämtliche Einstellungen über VS vorzunehmen habe ich selber noch nicht ausprobiert, allerdings musst du dort pro Projekt alles neu von Hand einstellen. Bei dieser Variante kannst du dir das Batch-Skript kopieren und einmal über das neue Projekt "drüberlaufen" lassen. Im Endeffekt kommt es auf's gleiche raus.
Shadow
Beiträge: 92
Registriert: 27. August 2005 18:15
Wohnort: Iserlohn
Kontaktdaten:

Beitrag von Shadow »

Mister_Crac hat geschrieben:
EDIT:
Tja, nachdem es mit Eclipse nicht ging, geht es bei mir auch mit Visual Studio (.NET 2003) nicht. Laut Anleitung soll ich:
Um aus der UI Datei C++ Code zu machen, klickt man nun mit der rechten Maustaste auf die hinzugefügte Datei MainWindow.ui und wählt im sich öffnenden Popup Menü Eigenschaften. Dort klickt man in der linken Liste auf Benutzerdef. Buildschritt.
Was soll diese ominöse "linke Liste" sein, und wo sind die "Benutzerdef. Buildschritte"? Siehe Screenshot:

So. Ich probiere es jetzt noch ein letztes Mal mit Visual Studio .NET Express Edition, wenn es damit auch nicht geht, dann lass ich den Scheiß, kaufe mir noch eine Festplatte und installiere Linux. Dann eben mit KDevelop. Habe langsam die Schnauze voll von Anleitungen, die zwar gut gemeint sind, aber eben von Privatleuten und nicht von Trolltech-Offiziellen geschrieben sind. Wobei sich da eben die Frage stellt, warum nicht Trolltech selbst detaillierte Anleitungen veröffentlicht, wie man Eclipse, Borland, Visual Studio etc. mit Qt unter Windows zum Laufen bringt. Wollen die denn nicht, dass möglichst viele Leute Qt benutzen? Naja ich hab ihnen das mal per E-mail vorgeschlagen, vielleicht bekomme ich ja ne Antwort.
Bin genervt :-(
Das kann ich so nicht stehen lassen. Bei der kommerziellen Version von Qt wird eine Nahtlos-Integration für VS .NET bzw. 2005 angeboten, bei der du überhaupt nichts mehr extra einstellen musst. Trolltech's OpenSource-Version unterstützt VS 2005 Express eben noch nicht offiziell, daher gibt es die Patches und es ist am Anfang ein wenig Konfigurationsaufwand zu leisten, den du dir aber noch nicht mal mehr aus den Fingern saugen musst. Ich wünsche dir viel spaß mit KDevelop und Qt 4. Berichte mal, wie lange du dort brauchst. :)
Zuletzt geändert von Shadow am 15. August 2006 18:45, insgesamt 1-mal geändert.
Volker
Beiträge: 343
Registriert: 30. Juni 2005 05:27

Beitrag von Volker »

EDIT:
Tja, nachdem es mit Eclipse nicht ging, geht es bei mir auch mit Visual Studio (.NET 2003) nicht. Laut Anleitung soll ich:
Um aus der UI Datei C++ Code zu machen, klickt man nun mit der rechten Maustaste auf die hinzugefügte Datei MainWindow.ui und wählt im sich öffnenden Popup Menü Eigenschaften. Dort klickt man in der linken Liste auf Benutzerdef. Buildschritt.
Was soll diese ominöse "linke Liste" sein, und wo sind die "Benutzerdef. Buildschritte"? Siehe Screenshot:
Verschieb doch mal die UI Datei in dein Projekt (z.B. unter Resourcendateien), statt es nur unter Projektmappen Elemente einzufügen. Dann dürften auch oben erwähnte Einstellungen inkl. Benutzerdefinierten Buildschritt vorhanden sein.

Des weitern ist es bei Visual Studio 2005 zu mindest in der kommerziellen Variante möglich eigene Build Regeln zu erstellen, womit man sich das manuelle Eintragen bei jeder UI Datei sparen kann. Für die Express Edition, weiss ich das nicht, da ich sie noch nie installiert hatte.

Steht aber eigentlich alles auch im Tutorial soweit ich mich erinnere
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel
Mister_Crac
Beiträge: 28
Registriert: 10. August 2006 12:17

Beitrag von Mister_Crac »

Shadow hat geschrieben: Das kann ich so nicht stehen lassen. Bei der kommerziellen Version von Qt wird eine Nahtlos-Integration für VS .NET bzw. 2005 angeboten, bei der du überhaupt nichts mehr extra einstellen musst.
Ja - bei der *kommerziellen* Version. Die Leute, die sich das *kostenlose* Visual C++ 2005 Express Edition holen, werden aber in der Regel wohl auch die Open Source-Variante von Qt benutzen. Ich als Diplomand kann mir jedenfalls nichts anderes leisten. :-(
Ich wünsche dir viel spaß mit KDevelop und Qt 4. Berichte mal, wie lange du dort brauchst. :)
Wie, das ist NOCH schlimmer? :shock: *große Furcht*
Ich arbeite an und für sich gern mit und unter Linux, nur auf der Kiste hier ist halt im Moment nur Windows drauf und die Instituts-Assistentin killt mich, wenn ich die Festplatte formatiere - bliebe nur noch, eine weitere einzubauen und halt Dual-Boot... aber bevor ich das (wohl nächste Woche) mache, werde ich mich noch eine Weile mit Windows-IDEs quälen.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Mister_Crac hat geschrieben:
Shadow hat geschrieben: Das kann ich so nicht stehen lassen. Bei der kommerziellen Version von Qt wird eine Nahtlos-Integration für VS .NET bzw. 2005 angeboten, bei der du überhaupt nichts mehr extra einstellen musst.
Ja - bei der *kommerziellen* Version. Die Leute, die sich das *kostenlose* Visual C++ 2005 Express Edition holen, werden aber in der Regel wohl auch die Open Source-Variante von Qt benutzen. Ich als Diplomand kann mir jedenfalls nichts anderes leisten. :-(
Dann benutz MinGW - wieso kapiert ihr nicht dass mit dem Patch nur die Möglichkeit gegeben wird, Qt mit msvc zu kompilieren (d.h. Makefiles für nmake und korrekte (!!!) .vcproj für VisualStudio) zu erstellen. Die VS-Integration ist nämlich auch bei der kommerziellen Qt-Version nicht dabei sondern muss extra heruntergeladen und installiert werden!
Wobei ich, wie gesagt auch keinen Sinn in der Integration sehe wenn man platformunabhängig programmiert - man muss dann sowieso das pro-File pflegen und ob ich danach noch mit qmake das Makefile/vcproj neu erstelle oder nicht ist auch egal.
Ich freue mich schon drauf wenn ihr versucht kdelibs4 unter win32 zu verwenden ... :roll:
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Shadow
Beiträge: 92
Registriert: 27. August 2005 18:15
Wohnort: Iserlohn
Kontaktdaten:

Beitrag von Shadow »

Mister_Crac hat geschrieben:
Shadow hat geschrieben: Das kann ich so nicht stehen lassen. Bei der kommerziellen Version von Qt wird eine Nahtlos-Integration für VS .NET bzw. 2005 angeboten, bei der du überhaupt nichts mehr extra einstellen musst.
Ja - bei der *kommerziellen* Version. Die Leute, die sich das *kostenlose* Visual C++ 2005 Express Edition holen, werden aber in der Regel wohl auch die Open Source-Variante von Qt benutzen. Ich als Diplomand kann mir jedenfalls nichts anderes leisten. :-(
Ich wünsche dir viel spaß mit KDevelop und Qt 4. Berichte mal, wie lange du dort brauchst. :)
Wie, das ist NOCH schlimmer? :shock: *große Furcht*
Ich arbeite an und für sich gern mit und unter Linux, nur auf der Kiste hier ist halt im Moment nur Windows drauf und die Instituts-Assistentin killt mich, wenn ich die Festplatte formatiere - bliebe nur noch, eine weitere einzubauen und halt Dual-Boot... aber bevor ich das (wohl nächste Woche) mache, werde ich mich noch eine Weile mit Windows-IDEs quälen.
Also ich habe meine Diplomarbeit vor 2 Monaten beendet und habe währenddessen VS 2005 Express und Qt 4.1.1 eingesetzt und zwar so, wie ich das in der Anleitung auch beschrieben habe. Bei mir gab es während der ganzen Entwicklungszeit (knapp 12 Monate) keine Probleme bezüglich der verwendeten Werkzeuge.

Grundsätzlich ist für die Installation und Konfiguration von Qt 4.1.1 unter Linux auch kein wesentlich höherer Aufwand zu erbringen. Ich finde jedoch persönlich die Bedienung der neuen KDevelop-Version recht unfreundlich bzw. unübersichtlich. Was das Debugging angeht, würde ich dir auch VS 2005 Express empfehlen. Dort hat sich im Vergleich zu den alten Versionen viel verbessert, gerade was den Komfort und die schnelle Fehlerlokalisierung betrifft.
Mister_Crac
Beiträge: 28
Registriert: 10. August 2006 12:17

Beitrag von Mister_Crac »

Christian81 hat geschrieben: Dann benutz MinGW - wieso kapiert ihr nicht dass mit dem Patch nur die Möglichkeit gegeben wird, Qt mit msvc zu kompilieren (d.h. Makefiles für nmake und korrekte (!!!) .vcproj für VisualStudio) zu erstellen. Die VS-Integration ist nämlich auch bei der kommerziellen Qt-Version nicht dabei sondern muss extra heruntergeladen und installiert werden!
Es geht doch darum, dass man direkt in der Entwicklungsumgebung kompilieren und linken will. Und nicht erst große Konsolen-Orgien mit qmake -project und qmake und hastenichgesehen. Dann kann man auch gleich mit vi und Konsole arbeiten. ;-)
Wobei ich, wie gesagt auch keinen Sinn in der Integration sehe wenn man platformunabhängig programmiert - man muss dann sowieso das pro-File pflegen und ob ich danach noch mit qmake das Makefile/vcproj neu erstelle oder nicht ist auch egal.
Ich freue mich schon drauf wenn ihr versucht kdelibs4 unter win32 zu verwenden ... :roll:
Mein Prof ist eigentlich schon zufrieden, wenn's unter Windows läuft - was anderes kennt er eh ned ;-) Wenn es aber auch unter Linux und Mac tut, um so besser.

Was ich bei dem ganzen Kram(pf) nicht verstehe ist: Niemand hat mehr Interesse an einer Verbreitung von Qt als die Leute von Trolltech selbst. Warum die also nicht vernünftige Anleitungen schreiben, wie man diese und jene - ebenfalls *kostenlose* - IDE mit Qt zusammen zum Laufen bringt (z.B. Eclipse, Dev-C++, Visual C++ 2005 Express Edition) - das ist mir echt ein Rätsel. Vielleicht wollen sie nicht mehr Erfolg? ;-)
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Mister_Crac hat geschrieben:
Christian81 hat geschrieben: Dann benutz MinGW - wieso kapiert ihr nicht dass mit dem Patch nur die Möglichkeit gegeben wird, Qt mit msvc zu kompilieren (d.h. Makefiles für nmake und korrekte (!!!) .vcproj für VisualStudio) zu erstellen. Die VS-Integration ist nämlich auch bei der kommerziellen Qt-Version nicht dabei sondern muss extra heruntergeladen und installiert werden!
Es geht doch darum, dass man direkt in der Entwicklungsumgebung kompilieren und linken will. Und nicht erst große Konsolen-Orgien mit qmake -project und qmake und hastenichgesehen. Dann kann man auch gleich mit vi und Konsole arbeiten. ;-)
'qmake -tp vc meinfile.pro' ist also ein Krampf? Na dann viel Spass unter Linux...
Was ich bei dem ganzen Kram(pf) nicht verstehe ist: Niemand hat mehr Interesse an einer Verbreitung von Qt als die Leute von Trolltech selbst. Warum die also nicht vernünftige Anleitungen schreiben, wie man diese und jene - ebenfalls *kostenlose* - IDE mit Qt zusammen zum Laufen bringt (z.B. Eclipse, Dev-C++, Visual C++ 2005 Express Edition) - das ist mir echt ein Rätsel. Vielleicht wollen sie nicht mehr Erfolg? ;-)
TT hat sich nunmal entschieden, nur wirklich freie Compiler zu unterstützen - und dann ist nunmal nur mingw. Wenn ich das manchmal so lese bedauere ich fast dass sie Qt4 überhaupt für Windows unter die GPL gestellt haben...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten