Benutzte die aktuellste qt version. Der Fehler kommt übrigens immer wenn er die Ausführbare Datei erstellt.
Code: Alles auswählen
g++ -o Editor EditorPres.o EditorDlg.o EditorMain.o SearchDlg.o SearchPres.o FileIOAnw.o Messagge.o moc_EditorPres.o moc_EditorDlg.o -L/usr/lib -lQtGui -lQtCore -lpthread
SearchDlg.o: In function `SearchDlg::SearchDlg()':
SearchDlg.cpp:(.text+0x44): undefined reference to `vtable for SearchDlg'
SearchDlg.cpp:(.text+0x4b): undefined reference to `vtable for SearchDlg'
SearchDlg.o: In function `SearchDlg::SearchDlg()':
SearchDlg.cpp:(.text+0x74): undefined reference to `vtable for SearchDlg'
SearchDlg.cpp:(.text+0x7b): undefined reference to `vtable for SearchDlg'
SearchPres.o: In function `SearchPres::SearchPres()':
SearchPres.cpp:(.text+0x45b): undefined reference to `vtable for SearchPres'
SearchPres.cpp:(.text+0x462): undefined reference to `vtable for SearchPres'
SearchPres.o: In function `SearchPres::SearchPres()':
SearchPres.cpp:(.text+0x54b): undefined reference to `vtable for SearchPres'
SearchPres.cpp:(.text+0x552): undefined reference to `vtable for SearchPres'
collect2: ld gab 1 als Ende-Status zurück
make: *** [Editor] Fehler 1Es ist ein Editor nach dem 3 Schichtenmodell mit folgenden Dateien:
- EditorMain.cpp (Die main halt)
- EditorDlg.cpp, EditorDlg.h (Dialogmanagmentschicht)
- EditorPres.cpp, EditorPres.h (Presentationsschicht)
- FileIOAnw.cpp, FileIOAnw.h (Anwendungsschicht)
- Messagge.cpp, Messagge.h (zum abfangen von Fehlern)
auch die Suchfunktion wenn ich sie mit einer eigenen main ausprobiere mit den Dateien funzt:
- SearchDlg.cpp, SearchDlg.h
- SearchPres.cpp, SearchPres.h
Die Header sind alle richtig eingebunden an denen kann es nicht liegen.
Auf die search() aus SearchDlg.cpp greif ich folgendermassen zu:
Code: Alles auswählen
// EditorDlg.h
SearchDlg *dialog;
// EditorDlg.cpp
dialog = new SearchDlg();
// z.B. hier wird ein string von dieser Funktion zurückgegeben
QString textToFind = dialog->search();
Für die die das durchkompilieren möchten hab ich ein Archiv.zip drangehängt. Makefile ist auch schon drin.
gruß