PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : qcat compile problem


christophwth
10.06.01, 22:34
Hi

ich habe mir qcad version 1.4.7 gezogen nachdem ich die 1.3.3 er version mal ein bisschen getestet habe, und dieses programm für gut befunden habe ;)
die quelle :www.qcad.org

mein problem, suse 7.0 , welches keine rpm´s der 4.er version verarbeiten kann
vorliegende rpm´s sind für rh 7.1 als download verfügbar

mit den sourcen habe ich einen neuen versuch gestartet
, da das programm auf qt aufbaut ,
mit export das QTDIR auf die verlangten 2.1.1
libs gesetzt.
dann ein make durchgeführt , und gewartet.
nach ca . 20 min tat ein fehler auf
und make wurde beendet.

da kein configure vorhanden war.
habe ich mein glück mit tmake von trolltech
versucht , selbiges lief durch ohne eine meldung auszuspucken.
daher nahm ich an alles ok .
darauf ausgeführtes make lief ca 1/2 Std.
und brach mit undefinierten referenzen ab.

hier ein auszug :
<pre>

moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog.12QPaintDevice+0xc): undefined reference to `QPaintDevice::setX11Data(QPaintDeviceX11Data const *)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0x1c): undefined reference to `QWidget::setName(char const *)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0x30): undefined reference to `QObject::childEvent(QChildEvent *)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0x70): undefined reference to `QWidget::unsetCursor(void)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0x74): undefined reference to `QWidget::setMask(QBitmap const &)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0x7c): undefined reference to `QWidget::setCaption(QString const &)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0x84): undefined reference to `QWidget::setIconText(QString const &)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xa4): undefined reference to `QDialog::hide(void)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xa8): undefined reference to `QWidget::showMinimized(void)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xac): undefined reference to `QWidget::showMaximized(void)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xb0): undefined reference to `QWidget::showNormal(void)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xb4): undefined reference to `QWidget: :polish(void)'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xd0): undefined reference to `QWidget::minimumSizeHint(void) const'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xd4): undefined reference to `QWidget::sizePolicy(void) const'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xd8): undefined reference to `QWidget::heightForWidth(int) const'
moc_ryesnodialog.o(.gnu.linkonce.d.__vt_12RYesNoDi alog+0xe0): undefined reference to `QWidget::reparent(QWidget *, unsign

</pre>

diese meldungen betreffen dateien mit der "vorsilbe" moc_
deshalb meine frage was ist das?
in meinen verfügbaren quellen habe ich keine
information über eventuell zugehörige pakete gefunden.

eventuell zutreffende bezeichnung für moc
meta object code

über sachdienliche hinweise die zur lösung des problems beitragen können bin ich sehr
dankbar

thommy
11.06.01, 08:06
Es ist der Meta Object Compiler. Normalerweise ist er im Paket qt-devel enthalten...

Thomas

christophwth
11.06.01, 09:08
Hi

thommy , danke für deine antwort.
nach genaueren recherchen bin ich gestern
auch noch auf den sinn der abkürzung
gestossen.
aber was läuft beim kompilieren verkehrt.

da ich keinen logfile habe, weiss ich es nicht genau, aber alle nicht vorhandenen referenzen.
liegen im compile verzeichniss
als .cpp dateien
das sind die zum kompilieren vorbereiteten
dateien die sowohl als .o (fertig kompiliert ?)

existieren bei dir diese .h oder .cpp dateien
unter /usr/lib ?

ich glaube ich muss mich mal schlau machen
was für ein konzept hinter diesem meta objekt
compiler steckt ;)
ein paar begriffe für die suche habe ich
ja , jetzt

kann es sein, dass das paket qt-devel zu alt ist ?

grusss
christoph