Seite 1 von 1

[gelöst] Linkerfehler beim Kompillieren mit den Debug-Libs

Verfasst: 7. Dezember 2007 13:38
von bw1faeh0
Hallo Leute,

ich habe es endlich geschafft die Debug-Libs von QT zu kompilieren.
Nun habe ich aber das Problem, dass mein Quellcode mit dem target debug nicht mehr erfolgreich übersetzt wird. das target release übersetzt den gleichen Code jedoch ohne Probleme.

Der Linker meldet bei dem Target debug folgenden Fehler:
./debug/FTDI.o: In function `Z16q_atomic_set_ptrPVvPv':
C:/Qt/Projekte/fmbMonitor/../../4.3.3/include/QtCore/../../src/corelib/thread/qatomic.h:(.text$_ZN13CommunicationC2Ev[Communication::Communication()]+0x8): undefined reference to `vtable for Communication'
Kann mir jemand sagen, wo ich da suchen kann?
Bei der Klasse Communication handelt es sich um eine abstrakte Klasse, die wie folgt definiert ist:

Code: Alles auswählen

class Communication
{
public:
	virtual ~Communication(){};
	 /*
	 * Methode zum Öffnen der Schnittstelle
	 */
	virtual bool Open() = 0;
	
	/*
	 * Methode zum Schließen der Schnittstelle
	 */
	virtual void Close() = 0;
	
	/*
	 * Methode zum Überprüfen der Verbindung zum Interface (FTDI, Ethernet, o.ä.)
	 */
	virtual bool isInterfaceConnected() = 0;
	
	/*
	 * Methode zum Überprüfen der verbindung zum Hitachi
	 */
	virtual bool isSnifferConnected() = 0;
	
	/*
	 * Methode zum Senden von Daten an die Hardware
	 */
	virtual void SendData(unsigned char*, int) = 0;
	
	/*
	 * Methode zum Empfangen von Daten von der Hardware
	 */
	virtual QList<unsigned char> GetData() = 0;
};

Ich verstehe nicht ganz, wo der Linker den Konstruktor her nimmt.

Hat jemand eine Idee?

vg

Christian

Verfasst: 7. Dezember 2007 13:42
von Christian81
Das ist keine abstrakte Klasse.

Verfasst: 7. Dezember 2007 13:54
von bw1faeh0
und jetzt?

Verfasst: 7. Dezember 2007 15:13
von Christian81
Schon besser. Und da jetzt auch ein virtual dtor da ist sollte es gehen, oder?

Verfasst: 7. Dezember 2007 15:28
von bw1faeh0
jupp :)