> -----Original Message----- > On Sunday 01 August 2004 00:02, machoamerica wrote: > > hi there, > > > > i'm building an application with qt3-designer. things were going well as > > long as i was using strictly qt parts (no kde parts), but when i tried > > adding a KLineEdit the linker barfed. > > > > [foucault][macho ~]$ make > > g++ -o junto .obj/main.o .obj/mainform.o .obj/edititemform.o > > .obj/moc_mainform.o .obj/moc_edititemform.o -L/usr/share/qt3/lib > > -L/usr/X11R6/lib -L/usr/lib -lqt-mt -lXext -lX11 -lm > > > > .obj/mainform.o(.text+0x3fd6): In function > `MainForm::MainForm[not-in-charge](QWidget*, char const*, bool, unsigned)': > > : undefined reference to `KLineEdit::KLineEdit[in-charge](QWidget*, char > > : const*)' > > > > .obj/mainform.o(.text+0x7166): In function `MainForm::MainForm[in-charge] > (QWidget*, char const*, bool, unsigned)': > > : undefined reference to `KLineEdit::KLineEdit[in-charge](QWidget*, char > > : const*)' > > > > collect2: ld returned 1 exit status > > make: *** [junto] Error 1 > > > > i have the -L/usr/lib option in the link command, and as far as i can tell, > > the KLineEdit definition should be in one of the following kdelibs4-dev > > files: > > > > [foucault][macho ~]$ ls /usr/lib/libkdeui.* > > /usr/lib/libkdeui.la /usr/lib/libkdeui.so.4 > > /usr/lib/libkdeui.so /usr/lib/libkdeui.so.4.2.0 > > > > but apparently g++ is not satisfied. i'm running from the testing branch > > of debian. if anyone can see what i'm missing, i'd love to be filled in. > > > You dont see to have a -lkde or -lkdeui (I forget which) you need to add - > just -L/usr/lib specifies the search path, but doesnt tell it to explicitly > link in any KDE libraries... >
thanks for the prompt reply. -lkdeui was the switch i needed. however, now, after compiling, my application segfaults whenever it tries to instantiate any of several kde parts (including KLineEdit and KDatePicker). strangely, KSqueezedText seems to work fine, and stranger still, if i include a KDateTable, the programs will not compile. i get: [foucault][macho junto]$ make g++ -c -pipe -Wall -W -O2 -DQT_NO_DEBUG -DQT_SHARED -DQT_THREAD_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I/usr/include/kde -I/usr/include/qt3 -I.ui/ -I. -I.moc/ -o .obj/mainform.o .ui/mainform.cpp .ui/mainform.cpp: In constructor `MainForm::MainForm(QWidget*, const char*, bool, unsigned int)': .ui/mainform.cpp:103: error: no matching function for call to `KDateTable:: KDateTable(QWidget*&, const char[12])' /usr/include/kde/kdatetbl.h:251: error: candidates are: KDateTable::KDateTable(const KDateTable&) /usr/include/kde/kdatetbl.h:262: error: KDateTable::KDateTable(QWidget*, QDate, const char*, unsigned int) make: *** [.obj/mainform.o] Error 1 looks like qt-designer decided to call a constructor for KDateTable that doesn't exist. KDateTable is expecting a date and a name, and it only gets sent a name. is this still my fault, or is it time to submit a bug report? -macho

