[Gelöst]Qt-Opensource in MSVS 6

Verschiedenes zu Qt
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

[Gelöst]Qt-Opensource in MSVS 6

Beitrag von Adi »

Hallo Zusammen

Ich versuche vergiftet Qt-Opensource ins Visual Studio zu patchen.

VS ist installiert und QT OS sowie Patch sind im C:/QT/4.1.0 entpackt.
Path ist korrekt gesetzt.

Wenn ich nun qconfigure msvc ausführe, passiert einiges (was gut ist) aber dann bricht die Ausführung mit folgende Meldungen ab:
qstyleplugin.cpp
qcommonstyle.cpp
qcdestyle.cpp
qwindowsxpstyle.cpp
C:\Qt\4.1.0\src\gui\styles\qwindowsxpstyle.cpp(66) : fatal error C1083: Include-Datei kann nicht geoeffnet werden: 'uxtheme.h': No such file or directory
qplastiquestyle.cpp
qwindowsstyle.cpp
qmotifstyle.cpp
Generieren von Code...
NMAKE : fatal error U1077: 'cl' : Rueckgabe-Code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio\VC98\bin\NMAKE.EXE"' : Rueckgabe-Code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : Rueckgabe-Code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : Rueckgabe-Code '0x2'
Stop.

C:\Qt\4.1.0>
Ich hoffe, dass jemand helfen kann. Vielen Dank noch.
Zuletzt geändert von Adi am 26. Februar 2006 22:48, insgesamt 1-mal geändert.
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Das Microsoft Platform SDK vergessen zu installieren.
Siehe dazu auch die Fussnote hier zum Beschaffen des letzten für MSVC6 möglichen SDKs: http://qtwin.sourceforge.net/qt3-win32/ ... .php#notes
Ausserdem - schmeiss msvc6 weg und nimm 2005 express
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

Denn mit dem 6.(Das schreibt auch Trolltech gehen einige Funktionen nicht).
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

Beitrag von Adi »

Danke für die Hilfe.
Christian81 hat geschrieben:Das Microsoft Platform SDK vergessen zu installieren...
Ich konnte das nicht vergessen, da ich nicht wusste, dass es benötigt wird :wink:
Christian81 hat geschrieben:...Ausserdem - schmeiss msvc6 weg und nimm 2005 express
Das ist immer eine Frage des Preises :roll:

Ich könnte mir hochstens .NET drauf schmeissen. Ist einfach ein grosses Paket.
Ich arbeitete bisher mit MinGW, aber zum Debugen ist das nicht ideal (Step-By-Step-Debugging)

Nun habe ich SDK installiert, die Umgebungsvariable gesetzt und den Konfig wieder ausgeführt, aber die Fehlermeldung kommt immernoch...

Gruss
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

jetzte muste du deinem VC6 noch beibiegen, wo es die includes finden kann.
Damit er die aus dem Platform SDK findet. Denn die Datei befindet sich unter C:\Programme\Microsoft Platform SDK\Include oder wo auch immer du das SDK gelassen hast
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

Beitrag von Adi »

Läuft nicht... :?
Habe es auch mit setzen von der Umgebungsvariable versucht, kein Erfolg...
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

Hm du kannst doch in VC6 Include Verzeichnisse einfügen bzw, am prompt müste eine Variable geben. Kannste ja mal mit set nachschauen. Denn mit dem VC2005 gibt es zur Zeit noch ein kleines Probelm, welchem noch nachgegengen werden muss.(ist in Arbeit)
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

Beitrag von Adi »

Ich glaube das Problem ist, dass ich noch nicht soweit bin., wie du mir versuchst zu helfen.

Ich versuche mit qconfigure msvc die Bibliotheken zu Bilden. Das mache ich im CMD und habe soweit die Umgebungsvariable gesetzt. Nur wird der Pfad zum SDK nicht gefunden. Wie müsste dieser sein?
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
BartSimpson
Beiträge: 1379
Registriert: 6. November 2004 12:03
Kontaktdaten:

Beitrag von BartSimpson »

nein du darft die Komandozeile nicht per cmd starten. Sondern du must die aus dem Eintrag "Visual Studio 2005-Eingabeaufforderung" nehmen. Gut bei dir dürfte das stat 2005 6 heissen oder so ähnlich. Denn dort sollte denn die Umgebungsvariable include vorhanden sein, die die ändern must
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

Beitrag von Adi »

Jetzt bekomme ich eine Kette von Fehler während dem Kompilieren von qdrawhelper_x86.cpp:
....
....
....
painting\qdrawhelper_x86.cpp:521: error: `ca' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:521: error: `mmx_0x0080' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:521: error: `_byte_mul' undeclared (first use this function)
....
....
....
....
painting\qdrawhelper_x86.cpp:590: error: `_byte_mul' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:591: error: expected `;' before "d"
painting\qdrawhelper_x86.cpp: In function `void qt_blend_color_argb_sse(int, const QSpan*, void*)':
painting\qdrawhelper_x86.cpp:636: error: `m64' does not name a type
painting\qdrawhelper_x86.cpp:637: error: `m64' does not name a type
painting\qdrawhelper_x86.cpp:638: error: `m64' does not name a type
painting\qdrawhelper_x86.cpp:645: error: `m64' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:645: error: expected `;' before "ca"
painting\qdrawhelper_x86.cpp:646: error: expected `;' before "s"
painting\qdrawhelper_x86.cpp:647: error: expected `;' before "ica"
painting\qdrawhelper_x86.cpp:649: error: `s' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:649: error: `mmx_0x0000' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:649: error: `_load' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:649: error: `ica' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:649: error: `mmx_0x0080' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:649: error: `_byte_mul' undeclared (first use this function)
painting\qdrawhelper_x86.cpp:649: error: `add' undeclared (first use this function)
NMAKE : fatal error U1077: 'g++' : return code '0x1'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files\Microsoft Platform SDK\Bin\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : return code '0x2'
Stop.

C:\Qt>
:shock:
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Achja - du hast bestimmt den patch 2 und nicht patch 3 - der zweite wollte mit msvc6 nicht so recht :)
http://sourceforge.net/tracker/index.ph ... tid=455140
Aber ich verstehe noch nicht warum Du nicht MSVC2005Express nimmst - kostet doch nichts.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

Beitrag von Adi »

Ich habe Patch 3 versucht.

Auf einem anderen PC habe ich die Intergration ins .NET versucht.

Wie kann ich ein vc-projekt-datei macen? mit qmake -tp vc erhalte ich
WARNING: Unable to generate output for: C:/LaserRopoterSteuerung/Makefile.Debug
[TEMPLATE vcapp]
WARNING: Unable to generate output for: C:/LaserRopoterSteuerung/Makefile.Releas
e [TEMPLATE vcapp]
BTW: Ich wusste gar nicht, dass MSVC2005Express umsonst ist... :P
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Das ist komisch - was steht in der pro-Datei drin -> 'template = app'
Schau mal ob ein Beispiel in qt4/examples/ geht - wenn ja schau ob du in Deiner pro-Datei was vergessen hast.
Und wenn das alles nicht hilft:
qt4/qmake/generators/win32/msvc_vcproj.cpp -> '#define DEBUG_VCPROJ_GENERATOR' wieder einkommentieren -> qmake neu erstellen (qt4/qmake -> 'nmake -f Makefile.svc2005') und dann mal schauen was der debug-output sagt...

Das mit mmx - war das wirklich patch3? Schau mal in qt4/src/gui/painting/painting.pri nach und entferne dort in Zeile 136 ' DEFINES += QT_HAVE_SSE' - wobei er dort nicht hinkommen dürfte wenn Zeile 133 so aussieht: '} else:win32:!win32-msvc:!win32-borland {'
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Adi
Beiträge: 87
Registriert: 1. Januar 2006 14:51

Beitrag von Adi »

Also ich habe es auch nach Tagen nicht zum Laufen gebracht. Ich habe es auch mit Löschen und neuinstallieren versucht. Also habe ich noch mit VC 2005 Express probiert und erhalte ein anderes Problem bei qmake -tp msvc2005
Siehe Auszug aus "Visual Studio 2005 Command Prompt:
qvector.cpp
qvsnprintf.cpp
Generating Code...
cl -c -FIqmake_pch.h -Yuqmake_pch.h -Fptmp\qmake_pch.pch -nologo -Zm200
-GS -wd4996 -O2 -MD -GR -EHsc -W3 -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_EDITION=
QT_EDITION_DESKTOP -DQT_BUILD_QMAKE -DQT_BOOTSTRAPPED -DQT_NO_TEXTCODEC -DQT_NO_
LIBRARY -DQT_NO_STL -DQT_NO_COMPRESS -DQT_NO_UNICODETABLES -DQT_NO_GEOM_VARIANT
-DQT_NO_DATASTREAM -DQMAKE_OPENSOURCE_EDITION -DQT_NODLL -DQT_NO_THREAD -DQT_NO_
QOBJECT -DWIN32 -I"../src/corelib/arch/generic" -I"generators" -I"generators\uni
x" -I"generators\win32" -I"generators\mac" -I"../include" -I"../include/QtCore"
-I"../qmake" -I"../mkspecs/win32-msvc2005" -Fotmp\ @C:\DOKUME~1\ADMINI~1\LOKALE~
1\Temp\nmC.tmp
qbuffer.cpp
qdir.cpp
qfile.cpp
qabstractfileengine.cpp
qfileinfo.cpp
qfsfileengine.cpp
qiodevice.cpp
qtemporaryfile.cpp
qtextstream.cpp
qurl.cpp
qsettings.cpp
qfsfileengine_win.cpp
c:\programme\microsoft visual studio\vc98\include\ocidl.h(4675) : error C4430: m
issing type specifier - int assumed. Note: C++ does not support default-int
qsettings_win.cpp
Generating Code...
NMAKE : fatal error U1077: '"C:\Programme\Microsoft Visual Studio 8\VC\BIN\cl.EX
E"' : return code '0x2'
Stop.
C:\Qt\4.1.0>
Ich bin mit Latein am Ende (auch mit dem Geduld schon bald :? )
Win 2k, Win XP
QT Win Opensource 4.1.1
MinGW 3.4.2
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Deine Umgebungsvariablen sind total falsch. Du kompilierst (zumindest dem mkspec nach) mit msvc8, benutzt aber includes von msvc6:

Code: Alles auswählen

c:\programme\microsoft visual studio\vc98\include\ocidl.h
Das kann nicht gehen!

Man sollte schon die 'Visual Studio 200x Eingabeaufforderung' benutzen anstatt cmd.exe bzw. die Umgebungsvariablen korrekt von Hand setzen

Code: Alles auswählen

C:\Programme\Microsoft Visual Studio 8\VC>set INCLUDE
INCLUDE=C:\Programme\Microsoft Visual Studio 8\VC\ATLMFC\INCLUDE;C:\Programme\Microsoft Visual Studio 8\VC\INCLUDE;C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\include;C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\include;C:\Programme\Microsoft Visual Studio .NET 2003\SDK\v1.1\include\

C:\Programme\Microsoft Visual Studio 8\VC>set LIB
LIB=C:\Programme\Microsoft Visual Studio 8\VC\ATLMFC\LIB;C:\Programme\MicrosoftVisual Studio 8\VC\LIB;C:\Programme\Microsoft Visual Studio 8\VC\PlatformSDK\lib;C:\Programme\Microsoft Visual Studio 8\SDK\v2.0\lib;C:\Programme\Microsoft Visual Studio .NET 2003\SDK\v1.1\Lib\LIBPATH=C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Programme\Microsoft Visual Studio 8\VC\ATLMFC\LIB
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten