latest compile error

Christian Couder chcouder at club-internet.fr
Sat Aug 19 17:01:40 UTC 2000


Bernd Gehrmann wrote:
> 
> On Sat, 19 Aug 2000, Christian Couder wrote:
> > Yes, I updated again and as I just said, I had to run moc by hand only
> > once for newprojectdlgbase.h and everything compiled ;-)
> 
> Oh, I missed that directory ... try again :-)
> 
> It's important that files that are not in the source distribution
> (in the cvs repository resp.) are mentioned in BUILT_SOURCES.
> Then a makefile rule makes sure that these files are generated
> before anything else happens.

I tryed again after a make distclean, and I get some undefined
references again:

g++ -O2 -fno-exceptions -fno-check-new -Wall -pedantic -W
-Wpointer-arith -Wmissing-prototypes -Wwrite-strings -Wno-long-long
-fno-builtin -o .libs/libkdevprintplugin.la.closure
.libs/libkdevprintplugin_la_closure.o .libs/main.o .libs/cfileprintdlg.o
.libs/cprintdlg.o .libs/cconfigenscriptdlg.o .libs/cconfiga2psdlg.o
.libs/cdatepikerdlg.o .libs/cconfigenscriptdlg.moc.o
.libs/cdatepikerdlg.moc.o .libs/main.moc.o .libs/cconfiga2psdlg.moc.o
.libs/cprintdlg.moc.o .libs/cfileprintdlg.moc.o
.libs/libkdevprintplugin_la_meta_unload.o  -L/usr/X11R6/lib
-L/opt/kde2/qt/lib -L/opt/kde2/lib
../../../kdevelop/lib/.libs/libkdevelop.so
-L/usr/lib/gcc-lib/i586-mandrake-linux/2.95.2
-L/usr/i586-mandrake-linux/lib /opt/kde2/lib/libkparts.so -lSM -lICE
-lICE -lSM -lICE -lSM -lICE -lICE -lSM -lICE -lSM -lICE -lICE -lSM -lICE
-lSM -lICE -lICE -lSM -lICE /opt/kde2/lib/libkfile.so
/opt/kde2/lib/libksycoca.so /opt/kde2/lib/libkio.so
/opt/kde2/lib/libkdeui.so -lSM -lICE -lICE -lSM -lICE
/opt/kde2/lib/libkdesu.so /opt/kde2/lib/libkdecore.so -ldl
/opt/kde2/lib/libDCOP.so -lSM -lICE -lICE -lqt -lpng /usr/lib/libjpeg.so
-lXext -lX11 -lSM -lICE -lutil -lz -lstdc++ -lm -lc -lgcc -Wl,--rpath
-Wl,/opt/kde2/lib
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase::staticMetaObject(void)'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase type_info node'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase::className(void) const'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase virtual table'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase::staticMetaObject(void)'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase::QPaintDevice virtual table'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase::className(void) const'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase::tr(char const *)'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase::tr(char const *)'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase type_info node'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase type_info function'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase virtual table'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`AppWizardBase::QPaintDevice virtual table'
../../../kdevelop/lib/.libs/libkdevelop.so: undefined reference to
`FilePropsPageBase type_info function'
collect2: ld returned 1 exit status
make[2]: *** [libkdevprintplugin.la.closure] Error 1
make[2]: Leaving directory
`/home/christian/kde/dev2/kdevelop/kdevelop/plugin/print'                                     

I think it comes from this part of the Makefile (from
kdevelop/kdevelop/lib/projectmanagement/):

libkdevprojectmanagement_la_OBJECTS = appwizard.lo \
automakeprojectspace.lo cppbinaryprojectplugin.lo plugin.lo pmc.lo \
project.lo projectspace.lo qobjectplugin.lo registeredfile.lo \
pluginloader.lo appwizardbase.lo filepropspagebase.lo filepropspage.lo\
pmc.moc.lo filepropspage.moc.lo automakeprojectspace.moc.lo
appwizard.moc.lo projectspace.moc.lo qobjectplugin.moc.lo
project.moc.lo  \
libkdevprojectmanagement_la_meta_unload.lo 

We can see that there is "appwizard.lo", "appwizardbase.lo" and
"appwizard.moc.lo" but not "appwizardbase.moc.lo".
And the same is true for "filepropspage".

But if I try again a make -f Makefile.cvs and a ./configure, then the
makefile is created again and this time the
libkdevprojectmanagement_la_OBJECTS contains the "appwizardbase.moc.lo":

libkdevprojectmanagement_la_OBJECTS = appwizard.lo \
automakeprojectspace.lo cppbinaryprojectplugin.lo plugin.lo pmc.lo \
project.lo projectspace.lo qobjectplugin.lo registeredfile.lo \
pluginloader.lo appwizardbase.lo filepropspagebase.lo filepropspage.lo\
pmc.moc.lo filepropspage.moc.lo appwizard.moc.lo projectspace.moc.lo
qobjectplugin.moc.lo project.moc.lo automakeprojectspace.moc.lo
filepropspagebase.moc.lo appwizardbase.moc.lo  \
libkdevprojectmanagement_la_meta_unload.lo                                                                               

And I found out that after a make distclean and a make in
kdevelop/kdevelop/lib/projectmanagement/, a ./configure is not enought
to have a good libkdevprojectmanagement_la_OBJECTS : you need both a
make -f Makefile.cvs and a ./configure to get it right.

So perhaps there are already some bugs (or some unimplemented features)
in the am_edit and that's why we cannot currently get everything right
:-(


> 
> > And then, when it works fine, I also volunteer to make it works for QT2
> > and KDE2 projects in Kdevelop1.
> >
> > But perhaps we will need to have a generic solution first, because I am
> > not sure the current solution is generic enought.
> 
> I can't find any way to add generated sources to a project in the
> relevant dialogs ... that makes me wonder how people deal with idl
> stuff or similar things ... perhaps Ralf can point me to the right
> chapter in the documentation ;-)
> 
> IMO it would be the best to integrate uic support into am_edit.
> Unfortunately, whenever I look at this script, I feel like
> jumping out of the window ;-(


Unfortunately I fear that someone will have to anyway ;-(

Bye,
Christian.




More information about the KDevelop-devel mailing list