PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Übersetzten von Qt-Programmen



ContainerDriver
25-08-2003, 10:08
Hallo,
ich will meine Qt-Programme übersetzten, und zwar ohne IDE.
Nur leider funktioniert das nicht so richtig, ich bekomme immer Fehlermeldungen wie:

/tmp/cc1nvRQg.o: In function `Rot13::Rot13(void)':
/tmp/cc1nvRQg.o(.text+0x1e): undefined reference to `Rot13::QPaintDevice virtual table'
/tmp/cc1nvRQg.o(.text+0x25): undefined reference to `Rot13 virtual table'
/tmp/cc1nvRQg.o: In function `main':
/tmp/cc1nvRQg.o(.text+0xb29): undefined reference to `Rot13::~Rot13(void)'
/tmp/cc1nvRQg.o(.text+0xb8d): undefined reference to `Rot13::~Rot13(void)'
collect2: ld returned 1 exit status

Der Quellcode ist richtig (1. kann ich ihn mit IDE übersetzten (kdevelop), 2. ist er ein Beispiel
aus der Qt-Hilfe).

Ich hab mir eine kleine Funktion geschrieben, die ich in .bashrc positioniert habe:

export QTDIR=/usr/lib/qt3

function qt_make()
{
g++ -I$QTDIR/include $* -L$QTDIR/lib -lqt-mt;
}

Was ist da faul?? Wieso funktioniert das nicht? Was brauche ich noch?

MfG

Florian

anda_skoa
25-08-2003, 10:54
Die Klasse hat vermutlich ein Q_OBJECT Macro und du hast vergessen den MOC drüber laufen zu lassen.

Ich rate, qmake zur Generierung von Makefiles zu benutzen.
Ist völlig von IDEs unabhängig.

Ciao,
_

peschmae
25-08-2003, 11:22
und ausserdem nicht nur bequem sondern es funktioniert auch :)

MfG Peschmä

ContainerDriver
25-08-2003, 15:14
Oh ja, ich hab moc vergessen!!!
Jetzt gehts!!!

Danke,

Florian