Qt3 zu Qt4 - Probleme!

Alles rund um die Programmierung mit Qt
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Qt3 zu Qt4 - Probleme!

Beitrag von Notwist »

Hallo,

wollte mein bestehendes Qt3-Projekt nach Qt4 portieren. Habe erstmal die .pro-Datei mit qt3qt4.exe portiert, so dass er automatisch alle ui-Files portiert hat. Dann per Hand alle cpp- und h-Dateien (geht das eigentlich auch einfacher? "qt3qt4 *.cpp" hat nicht funktioniert!).
Nun habe ich mein bestehendes VC++6-Projekt reingeladen und mal versucht zu kompelieren. Folgende Fehler:

"fatal error C1083: Cannot open include file: 'q3mainwindow.h': No such file or directory addregisterdataform.cpp" (27 verschiedene, alle im Zusammenhang mit der neuen Schreibart der Header-Einbindung)

Also muss ja irgendwie ein lib oder include-Pfad nicht stimmen, oder? Habe die Umgebungsvariablen richtig gesetzt, aber zB die Include-Dateien sitzen jetzt ja alle in separaten Verzeichnissen, nicht mehr nur in "c:\Qt\include", sondern in "c:\qt\include\qt". Weiss jemand, wie ich VC++ da richtig konfiguriere? In den ProjektSettings steht zB

"$(QTDIR)\include" /D "WIN32" /D "_DEBUG" /D

Wenn ich das in

"$(QTDIR)\include\qt" /D "WIN32" /D "_DEBUG" /D

abändere, sind zwar die anderen Fehler weg, dafür kommt folgende Fehlermeldung (insg. 29 Stück)

f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory

Meine ProjektSetting für die Libs heisst folgendermaßen:

kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib imm32.lib wsock32.lib winspool.lib winmm.lib $(QTDIR)\lib\qtmain.lib $(QTDIR)\lib\QtCore4.lib

Könnt Ihr mir helfen?
Gruß, Notwist
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Re: Qt3 zu Qt4 - Probleme!

Beitrag von macman »

Notwist hat geschrieben:Also muss ja irgendwie ein lib oder include-Pfad nicht stimmen, oder?
Das ist IMHO ein Fehler im Portierungstool. Setze vor alle includes für die Q3 Klassen ein Qt3Support vor, dann klappt es.
Also vorher:
#include <Q3ListView.h>
Nachher:
#include <Qt3Support/Q3ListView.h>

Über kurz oder lang sollten man die sowieso ersetzen.
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Beitrag von Notwist »

1. Problem: Habe den Designer benutzt und kann ergo diese Files per Hand garnicht abändern.

2. Mache ich das zB aber in anderen Files, wo derselbe Fehler besteht, bekomme ich danach etliche Fehler dieses Formats:

":\qt\3.3.3\include\qshared.h(47) : error C2079: 'QShared' uses undefined struct 'Q_EXPORT'"

und danach wieder die anderen:

"fatal error C1083: Cannot open include file: 'QLabel': No such file or directory"

Komisch ist, dass er sich hier noch auf den Pfad der Qt 3.3.3-Version bezieht, obwohl der eigentlich nirgends im Projekt mehr auftauchen sollte, da ich die Umgebungsvariablen ja abgeändert habe und somit der Pfad "%qt-dir" auch nun auf 4.0.0 weist. Mit dem Einbinden der Libs und Includes über Projekt-Settings hatte ich schon immer Probleme. :(((

Noch Vorschläge?
Gruß, Notwist
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Sollte es nicht QTDIR anstelle von QT-DIR sein?
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Beitrag von Notwist »

Ja, ist es auch. :-) Sorry. Stand aber richtig im Projekt, nur falsch abgeschrieben!

Liegt der Fehler denn eher an der falschen Angabe des Include-Verzeichnisses oder an fehlenden Angaben von Libs? Man muss doch jetzt alle Libs einzeln angeben, oder? Früher reichten ja zwei. Habe ja im Prinzip jetzt nur die $(QTDIR)\lib\qtmain.lib & $(QTDIR)\lib\QtCore4.lib drin.

Was muss denn in den Projekt-Settings unter C/C++ - Project Options stehen?

Bei mir:

/nologo /MDd /W3 /Gm /GX /ZI /Od /I "F:\Qt\4.0.0\include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "QT_DLL" /D "QT_THREAD_SUPPORT" /Fp"Debug/konfigurator.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c

Wie gesagt, wenn ich da den Pfad in "...\include\qt" ändere, kommen anderer merkwürdige Fehlermeldungen!

P.S.: Hat jemand einen LINK, wo die Parameter der Project Options erklärt werden, zB was das /I vor der Pafangabe bedeutet?
Gruß, Notwist
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Notwist hat geschrieben:Was muss denn in den Projekt-Settings unter C/C++ - Project Options stehen?
Wenn Du Q3 Klassen nutzt, muß auf jeden Fall QT3_SUPPORT mit in den Präprozessor Definitionen stehen. Eventuell reicht das schon, ansonsten les noch mal im Konvertierungskapitel.
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Re: Qt3 zu Qt4 - Probleme!

Beitrag von Christian81 »

macman hat geschrieben:
Notwist hat geschrieben:Also muss ja irgendwie ein lib oder include-Pfad nicht stimmen, oder?
Das ist IMHO ein Fehler im Portierungstool. Setze vor alle includes für die Q3 Klassen ein Qt3Support vor, dann klappt es.
Also vorher:
#include <Q3ListView.h>
Nachher:
#include <Qt3Support/Q3ListView.h>

Über kurz oder lang sollten man die sowieso ersetzen.
Oder einfach noch das include-Directory mit *hinzufügen* (und nicht wie oben abändern - die anderen Header muss er ja auch noch finden!)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Beitrag von Notwist »

Also, meine Projekt-Settings sehen jetzt so aus:

C/C++-Reiter unter Project Options:

/nologo /MDd /W3 /Gm /GX /ZI /Od /I "F:\Qt\4.0.0\include\Qt3Support" /I "F:\Qt\4.0.0\include\QtGui" /I "F:\Qt\4.0.0\include\Qt" /I "F:\Qt\4.0.0\include\QtCore" /I "F:\Qt\4.0.0\include\QtDesigner" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "QT_DLL" /D "QT_THREAD_SUPPORT" /Fp"Debug/konfigurator.pch" /YX /Fo"Debug/" /Fd"Debug/" /FD /GZ /c

Habe jetzt mal angenommen, dass man mit /I weitere Files includieren kann.

Unter LINK - GENERAL - OBJECT/LIBRARIES MODULES steht folgendes:

kernel32.lib user32.lib gdi32.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib imm32.lib wsock32.lib winspool.lib winmm.lib $(QTDIR)\lib\qtmain.lib $(QTDIR)\lib\QtCored.lib $(QTDIR)\lib\Qt3Support4.lib $(QTDIR)\lib\QtGui4.lib $(QTDIR)\lib\QtDesigner4.lib

Habe also ziemlich viel reingepackt. Nur die Zeile:

/I "F:\Qt\4.0.0\include\Qt"

hat was an den Fehlermeldungen verändert. Jetzige Fehlermeldungen:

Code: Alles auswählen

Compiling...
adddatafieldform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
adddatafieldformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
addidentifierform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
addidentifierformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
addregisterdataform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
addregisterdataformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
addregisterform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
addregisterformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
candata.cpp
f:\qt\4.0.0\src\qt3support\tools\q3ptrlist.h(25) : fatal error C1083: Cannot open include file: 'Qt3Support/q3glist.h': No such file or directory
iddata.cpp
f:\qt\4.0.0\src\corelib\tools\qstring.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qchar.h': No such file or directory
konfiguratormainwindow.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
konfiguratormainwindowimpl.cpp
f:\qt\4.0.0\src\qt3support\tools\q3ptrlist.h(25) : fatal error C1083: Cannot open include file: 'Qt3Support/q3glist.h': No such file or directory
listview.cpp
f:\qt\4.0.0\src\qt3support\tools\q3ptrlist.h(25) : fatal error C1083: Cannot open include file: 'Qt3Support/q3glist.h': No such file or directory
main.cpp
f:\qt\4.0.0\src\gui\kernel\qapplication.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qcoreapplication.h': No such file or directory
mapinfo.cpp
f:\qt\4.0.0\src\corelib\tools\qstring.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qchar.h': No such file or directory
moc_adddatafieldform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_adddatafieldformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_addidentifierform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_addidentifierformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_addregisterdataform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_addregisterdataformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_addregisterform.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_addregisterformimpl.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_konfiguratormainwindow.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
moc_konfiguratormainwindowimpl.cpp
f:\qt\4.0.0\src\qt3support\tools\q3ptrlist.h(25) : fatal error C1083: Cannot open include file: 'Qt3Support/q3glist.h': No such file or directory
ModbusData.cpp
f:\qt\4.0.0\src\corelib\tools\qstring.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qchar.h': No such file or directory
mycontainer.cpp
f:\qt\4.0.0\src\qt3support\tools\q3ptrlist.h(25) : fatal error C1083: Cannot open include file: 'Qt3Support/q3glist.h': No such file or directory
table.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
xmlparser.cpp
f:\qt\4.0.0\src\corelib\kernel\qvariant.h(25) : fatal error C1083: Cannot open include file: 'QtCore/qatomic.h': No such file or directory
Error executing cl.exe.

konfigurator.exe - 29 error(s), 0 warning(s)
In den Konvertierungskapiteln steht dazu leider auch nicht sehr viel.
Gruß, Notwist
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Überleg mal!
Er versucht die Datei QtCore/qatomic.h zu öffnen. Im welchen Verzeichnis muss mal also sein damit man diese Datei öffnen kann?? Füge also F:\Qt\4.0.0\include hinzu und fertig. Wobei ich $(QTDIR)\include bevorzugen würde...
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Beitrag von Notwist »

Stimmt, jetzt sind die LINKER-Fehler zwar weg, dafür aber Unmengen an Compiler-Fehlern, zu 100% aus den Dateien, die der Designer mir damals angelegt hat bzw. aus den neuen Qt4-Dateien. Ein kleiner Auszug:

Code: Alles auswählen

f:\marc\qt\konfigurator\adddatafieldform.cpp(39) : error C2661: 'QDialog::QDialog' : no overloaded function takes 4 parameters
f:\marc\qt\konfigurator\adddatafieldform.cpp(41) : error C2065: 'setName' : undeclared identifier
f:\marc\qt\konfigurator\adddatafieldform.cpp(43) : error C2661: 'QGridLayout::QGridLayout' : no overloaded function takes 6 parameters
f:\marc\qt\konfigurator\adddatafieldform.cpp(45) : error C2661: 'QVBoxLayout::QVBoxLayout' : no overloaded function takes 4 parameters
f:\marc\qt\konfigurator\adddatafieldform.cpp(47) : error C2661: 'QVBoxLayout::QVBoxLayout' : no overloaded function takes 4 parameters
f:\marc\qt\konfigurator\adddatafieldform.cpp(49) : error C2661: 'QHBoxLayout::QHBoxLayout' : no overloaded function takes 4 parameters
f:\marc\qt\konfigurator\adddatafieldform.cpp(51) : error C2664: '__thiscall QLabel::QLabel(class QWidget *,class QFlags<enum Qt::WindowType>)' : cannot convert parameter 2 from 'char [13]' to 'class QFlags<enum Qt::WindowType>'
        No constructor could take the source type, or constructor overload resolution was ambiguous
f:\marc\qt\konfigurator\adddatafieldform.cpp(57) : error C2664: '__thiscall QLineEdit::QLineEdit(const class QString &,class QWidget *)' : cannot convert parameter 1 from 'class AddDataFieldForm *const ' to 'const class QString &'
        Reason: cannot convert from 'class AddDataFieldForm *const ' to 'const class QString'
        No constructor could take the source type, or constructor overload resolution was ambiguous
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(110) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(110) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(112) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(112) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(113) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(113) : error C2059: syntax error : '&'
Insgesamt über 1400 Fehler. Das können doch nicht alles Portierungsfehler sein, oder? Muss ich die Designer-UIs nochmal in den neuen Designer reinladen und neu abspeichern, vielleicht?
Habs mal gemacht & jetzt sind noch mehr Fehler da. ;-) Glaube mittlerweile, eine Portierung wird nicht so einfach möglich sein.
Gruß, Notwist
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Notwist hat geschrieben:Das können doch nicht alles Portierungsfehler sein, oder?
Ein Fehler zieht oft ein ganzes Bündel an Folgefehlern hinter sich her. Über die Anzahl würde ich mir keine Gedanken machen.
Notwist hat geschrieben:Muss ich die Designer-UIs nochmal in den neuen Designer reinladen und neu abspeichern, vielleicht?
Habs mal gemacht & jetzt sind noch mehr Fehler da. ;-) Glaube mittlerweile, eine Portierung wird nicht so einfach möglich sein.
Klar sollte man sich sein GUI mal mit dem neuen Designer anschauen. Dann schmeisst Du die alten, vom 3er uic generierten Dateien weg, und fügst die neuen ui_*.h deinem Projekt hinzu. Dann wirst Du noch einiges an Anpassungen vornehmen müssen. Das es mit konvertieren und neu compilieren nicht getan ist, gab es hier doch oft genug zu lesen.
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Beitrag von Notwist »

Das habe ich ja gemacht. Was mich nur stutzig macht, dass er in Dateien meckert, die eigentlich ja den alten Code laufen lassen sollen. Q3ListView.h ist ja eine Datei, die im Prinzip den selben Code benutzt. Und wenn ich nun diese includiere und nicht mehr QListView.h sollten da doch keine Fehler kommen, oder?
Gruß, Notwist
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Notwist hat geschrieben:Q3ListView.h ist ja eine Datei, die im Prinzip den selben Code benutzt. Und wenn ich nun diese includiere und nicht mehr QListView.h sollten da doch keine Fehler kommen, oder?
Eben nicht. Es gibt in Qt3 Sachen, die in Qt4 nicht mehr vorhanden sind. Gerade bei den Listviews hat sich alles geändert. Guck doch was angemeckert wird und dann schaust Du im Assistenten, ob noch was darüber drin steht. Eventuell hat sich nur der Aufruf geändert, im ungünstigen Fall fehlt die Klasse komplett, wie z.B. QToolTipGroup.

Fakt ist jedoch das in 99% aller Fälle Anpassungen vorgenommen werden müssen, ohne geht es einfach nicht.
Notwist
Beiträge: 85
Registriert: 2. März 2005 14:24

Beitrag von Notwist »

Danke schon mal Euch allen, dass Ihr Euch mal wieder so viel Mühe macht. Noch eine Newbie-Frage. Bin jetzt mal angefangen, im Kleinen die einzelnen Fehler zu beheben. Bin also mit einer Klasse angefangen, habe nur die compiliert und habe mir dann die Fehler der Klasse angesehen und versucht u korrigieren. ZB sehr einfache Fehler, wie Aufrufe, wo dann einfach die "3" im Namen fehlte, weil die Klasse ja jetzt Q3PtrList heisst, ect.! Nun sind aber noch etliche Fehler, die sich nicht direkt auf meine Klasse, sondern auf die von Qt gestellte Klasse beziehen:

Code: Alles auswählen

Compiling...
listview.cpp
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(110) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(110) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(112) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(112) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(113) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(113) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(477) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(477) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(479) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3listview.h(479) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(119) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(119) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(149) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(149) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(189) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(189) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(301) : error C2143: syntax error : missing ',' before '&'
f:\qt\4.0.0\src\qt3support\itemviews\q3table.h(301) : error C2059: syntax error : '&'
f:\qt\4.0.0\src\qt3support\widgets\q3toolbar.h(39) : error C2039: 'ToolBarDock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3toolbar.h(39) : error C2039: 'DockTop' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3toolbar.h(38) : error C2629: unexpected 'class Q3ToolBar ('
f:\qt\4.0.0\src\qt3support\widgets\q3toolbar.h(38) : error C2238: unexpected token(s) preceding ';'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(51) : error C2039: 'WType_TopLevel' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(65) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(65) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(66) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(66) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(68) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(68) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(69) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(69) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(72) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(72) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(74) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(74) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(75) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(75) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(76) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(76) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(76) : error C2535: 'void __thiscall Q3MainWindow::moveDockWindow(class Q3DockWindow *)' : member function already defined or declared
        f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(75) : see declaration of 'moveDockWindow'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(91) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(91) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(93) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(93) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(94) : error C2535: 'class QList<class Q3DockWindow *> __thiscall Q3MainWindow::dockWindows(void) const' : member function already defined or declared
        f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(93) : see declaration of 'dockWindows'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(102) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(102) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(104) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(104) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(105) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(105) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(106) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(106) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(106) : error C2535: 'void __thiscall Q3MainWindow::moveToolBar(class Q3DockWindow *)' : member function already defined or declared
        f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(105) : see declaration of 'moveToolBar'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(110) : error C2039: 'Dock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(110) : error C2061: syntax error : identifier 'Dock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(186) : error C2039: 'ToolBarDock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(186) : error C2061: syntax error : identifier 'ToolBarDock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(188) : error C2065: 'dock' : undeclared identifier
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(188) : error C2065: 'newLine' : undeclared identifier
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(192) : error C2039: 'ToolBarDock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(192) : error C2061: syntax error : identifier 'ToolBarDock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(197) : error C2039: 'ToolBarDock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(197) : error C2061: syntax error : identifier 'ToolBarDock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(202) : error C2039: 'ToolBarDock' : is not a member of 'Qt'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(202) : error C2061: syntax error : identifier 'ToolBarDock'
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(203) : error C2084: function 'void __thiscall Q3MainWindow::moveToolBar(class Q3DockWindow *)' already has a body
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(204) : error C2065: 'nl' : undeclared identifier
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(204) : error C2065: 'index' : undeclared identifier
f:\qt\4.0.0\src\qt3support\widgets\q3mainwindow.h(204) : error C2065: 'extraOffset' : undeclared identifier
F:\Marc\Qt\konfigurator\listview.cpp(37) : fatal error C1903: unable to recover from previous error(s); stopping compilation
Error executing cl.exe.

listview.obj - 71 error(s), 0 warning(s)
Jetzt weiss ich nicht, wo ich diese Fehler anpacken muss, da der Code ja eigentlich gegeben ist und ich weiss nicht, welcher Code nun in meiner Klasse diese Fehler hervorruft. In meiner Klasse rufe ich die beanstandeten Methoden eigentlich garnicht auf. Gibt es da Hinweise, wie man darauf kommen kann?
Gruß, Notwist
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Zumindest bei q3listview.h scheint er die Klasse QColorGroup nicht zu kennen. Schau einfach mal bei den Zeilen nach - sollte doch nicht so schwer sein rauszufinden welche Klassen er nicht kennt und sie dann davor zu inkludieren.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten