Sehr Seltsame Fehlermeldung...

Du bist neu in der Welt von C++? Dann schau hier herein!
Antworten
Mr.Undercover
Beiträge: 68
Registriert: 28. Oktober 2008 23:44

Sehr Seltsame Fehlermeldung...

Beitrag von Mr.Undercover »

Hallo alle zusammen,

ich habe gestern noch an einen Projekt geschrieben und heute als ich das Projekt wieder compilieren wollte funktionierte es nicht mehr...
Ich habe versucht ein systemtray icon zu implementieren, als das nicht funkionierte habe ich es einfach wieder rausgenommen mit dem resultat dass es nicht mehr funktioniert!

Fehlermeldung:
1>------ Build started: Project: Tool, Configuration: Debug Win32 ------
1>Linking...
1>moc_tool.obj : error LNK2019: unresolved external symbol "private: void __thiscall Tool::on_graphicsView_customContextMenuRequested(class QPoint)" (?on_graphicsView_customContextMenuRequested@Tool@@AAEXVQPoint@@@Z) referenced in function "public: virtual int __thiscall Tool::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@Tool@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
1>C:\....\Visual Studio 2005\Projects\Tool\Debug\Tool.exe : fatal error LNK1120: 1 unresolved externals
1>Build log was saved at "file://c:\....\Visual Studio 2005\Projects\Tool\Tool\Debug\BuildLog.htm"
1>Tool - 2 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
----------------------------------------------------------

Ich bedanke mich im voraus für eure Mühe...

MfG
Mr.Undercover
Beiträge: 68
Registriert: 28. Oktober 2008 23:44

Problem mit "roher gewalt" gelöst!

Beitrag von Mr.Undercover »

Also ich habe bei den generated files diese Zeile auskommentiert (weil der Compiler ja auf diesen hinweis gibt)....

auskommentierte Zeile:
//case 0: on_graphicsView_customContextMenuRequested((*reinterpret_cast< QPoint(*)>(_a[1]))); break;

was bewirkt das denn ? bzw. wieso ?
----------------------------------------------------------

Ich bedanke mich im voraus für eure Mühe...

MfG
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

make distclean; qmake; make

keine Ahnung wie das im VS2005 geht.. evt. "Projektmappe neu erstellen" oder so...
erpheus
Beiträge: 46
Registriert: 18. November 2008 11:55
Wohnort: Stuttgart

Beitrag von erpheus »

Hi,

Erst mal ne Frage: Funktioniert es denn wenn Du diese Zeile auskommentierst?
Dann einen gut gemeinten Rat: Finger weg vom generierten Code. Auf den moc, der diesen erzeugt kann man sich schon verlassen.

Zu deiner Fehlermeldung. Diese meldet einen Linkerror.
Dies bedeudet folgendes:
Der moc von QT erzeugt für den C++Compiler verständlcihen Code. Dies ist notwendig weil dieser So Dinge wie Signals und Slots nicht kennt.
Dann wird dein Programm vom Compiler erfolgreich übersetzt und erzeugt die entsprechenden Objectfiles. Diese werden nun vom Linker zu einem Lauffähigen Programm zusammen geschnürt, was nun bei Dir schiff geht.
Grund? Ihm wird ein Objectfile fehlen. Warum das So ist?
Vermutlich steht im Pro-File eine Datei drinn die es nicht mehr gibt. Was ich jetzt einfach deshalb vermute, weil Du schreibst das Du Code entern hast und ich Vermute das Du hierbei ganze Klassen entfernt hast.

Wenn es nicht daran Liegt wäre eine Wiedergabe deine Programmarchitektur Sinnvoll.
Mr.Undercover
Beiträge: 68
Registriert: 28. Oktober 2008 23:44

Beitrag von Mr.Undercover »

Erstmal wenn ich die Zeile auskommentiere funktioniert das komplette Programm... Wenn ich die Zeile wieder mitrein nehme funktioniert nichts mehr :-(

Nach welchen Link sucht es denn ? Soviel habe ihc auch noch mitbekommen dass es sich um einen deadlink handelt....Aber nicht so richtig nach was...
----------------------------------------------------------

Ich bedanke mich im voraus für eure Mühe...

MfG
erpheus
Beiträge: 46
Registriert: 18. November 2008 11:55
Wohnort: Stuttgart

Beitrag von erpheus »

Vermutlich steht im Pro-File eine Datei drinn die es nicht mehr gibt
hast Du das mal überprüft?
Vergiss die Quellen für dein Icon wie das png oder so nicht. Leer mal deinen debug-ordner, damit qmake sauber alle files erstellt bei eclipse heist das Project-Clean.
GraphicsView hat schlieslich was mit Bildern zu tun und den Teil mit deinem Icon hast Du entfernt also ist da mit sicherheit irgendwas noch drin.
Mr.Undercover
Beiträge: 68
Registriert: 28. Oktober 2008 23:44

Beitrag von Mr.Undercover »

also ein Clean habe ich schon ein paar mal übern Projekt geschossen !
----------------------------------------------------------

Ich bedanke mich im voraus für eure Mühe...

MfG
erpheus
Beiträge: 46
Registriert: 18. November 2008 11:55
Wohnort: Stuttgart

Beitrag von erpheus »

Was ist den bei folgenden Lösungsvorschlägen bisher rausgekommen:
Vermutlich steht im Pro-File eine Datei drinn die es nicht mehr gibt
hast Du das mal überprüft?
evt. "Projektmappe neu erstellen" oder so...
<-- neu erstellenhilft bei vs sehr heufig.

Und dann ein letztes mal noch eine Antwort auf folgende Frage:
Nach welchen Link sucht es denn ?
Antwort:
Ich habe versucht ein systemtray icon zu implementieren, als das nicht funkionierte habe ich es einfach wieder rausgenommen

+

Code: Alles auswählen

unresolved external symbol "private: void __thiscall Tool::on_graphicsView_customContextMenuRequested(class QPoint)
=
Er sucht Information zum Thema Bilder also das was du rausgenommen hast ist nicht vollständig drause. :idea:
Antworten