Hi,
first of all thanks to Timothy and all the people involved for keeping alive my favourite desktop!
Now on to the business: I'm trying to build Trinity on a custom Linux From Scratch system and experienced a few compiling errors, here are some caused by the --enable-gcc-hidden-visibility switch:
In file included from /opt/qt/include/tqimage.h:32:0, from kpixmap.cpp:26, from libkdefx_la.all_cpp.cpp:2: /opt/qt/include/qimage.h: In member function bool QImageTextKeyLang::operator<(const QImageTextKeyLang&) const: /opt/qt/include/qimage.h:61:61: warning: suggest parentheses around && within || In file included from libkdefx_la.all_cpp.cpp:5:0: kimageeffect.cpp: At global scope: kimageeffect.cpp:4739:13: warning: unused parameter bpp kimageeffect.cpp:4739:13: warning: unused parameter has_alpha In file included from libkdefx_la.all_cpp.cpp:7:0: kstyle.cpp:155:1: warning: KStylePrivate has a field KStylePrivate::menuHandler whose type uses the anonymous namespace In file included from libkdefx_la.all_cpp.cpp:7:0: kstyle.cpp: In member function virtual void KStyle::drawComplexControl(QStyle::ComplexControl, QPainter*, const QWidget*, const QRect&, const QColorGroup&, QStyle::SFlags, QStyle::SCFlags, QStyle::SCFlags, const QStyleOption&) const: kstyle.cpp:1134:7: warning: suggest explicit braces to avoid ambiguous else kstyle.cpp: At global scope: kstyle.cpp:2267:19: error: expected unqualified-id before string constant make[2]: *** [libkdefx_la.all_cpp.lo] Errore 1 make[2]: Leaving directory `/usr/src/KDETrinity/20100918/kdelibs-20100918/kdefx'
solved by moving the KDE_EXPORT define in kdefx/kstyle.cpp as follows:
extern "C" void KDE_EXPORT kde_kstyle_set_scrollbar_type_windows( void* style )
networkstatustestservice.all_cpp.o: In function `ServiceIface_stub::registerNetwork(QString const&, NetworkStatus::Properties)': networkstatustestservice.all_cpp.cpp:(.text+0xff1): undefined reference to `operator<<(QDataStream&, NetworkStatus::Properties)' collect2: ld returned 1 exit status make[2]: *** [networkstatustestservice] Errore 1 make[2]: Leaving directory `/usr/src/KDETrinity/20100918/kdelibs-20100918/networkstatus'
solved by adding KDE_EXPORT to the << and >> operators in networkstatus/networkstatuscommon.{h,cpp} and removing the const qualifier. Not sure if this is the correct way.
./.libs/libkdeinit_konqueror.so: undefined reference to `StatusBarNetworkStatusIndicator::StatusBarNetworkStatusIndicator(QWidget*, char const*)' ./.libs/libkdeinit_konqueror.so: undefined reference to `StatusBarNetworkStatusIndicator::init()' collect2: ld returned 1 exit status make[3]: *** [konqueror] Errore 1 make[3]: Leaving directory `/usr/src/KDETrinity/20100918/kdebase-20100918/konqueror' make[2]: *** [all-recursive] Errore 1
./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::KickoffSearchInterface::qt_invoke(int, QUObject*)' ./.libs/libkdeinit_kicker.so: undefined reference to `typeinfo for KickoffSearch::Plugin' ./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::KickoffSearchInterface::qt_property(int, int, QVariant*)' ./.libs/libkdeinit_kicker.so: undefined reference to `typeinfo for KickoffSearch::KickoffSearchInterface' ./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::KickoffSearchInterface::KickoffSearchInterface(QObject*, char const*)' ./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::KickoffSearchInterface::staticMetaObject()' ./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::Plugin::staticMetaObject()' ./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::KickoffSearchInterface::qt_cast(char const*)' ./.libs/libkdeinit_kicker.so: undefined reference to `vtable for KickoffSearch::KickoffSearchInterface' ./.libs/libkdeinit_kicker.so: undefined reference to `KickoffSearch::KickoffSearchInterface::qt_emit(int, QUObject*)' collect2: ld returned 1 exit status make[4]: *** [kicker] Errore 1 make[4]: Leaving directory `/usr/src/KDETrinity/20100918/kdebase-20100918/kicker/kicker'
solved by adding KDE_EXPORT to StatusBarNetworkStatusIndicator, KickoffSearchInterface and KickoffSearch::Plugin. There were some other undefined references regarding RandRScreen and RandRDisplay classes but I deleted my logs...
Some more build errors will come in next mail.
Regards, Leandro
-- Caselle da 1GB, trasmetti allegati fino a 3GB e in piu' IMAP, POP3 e SMTP autenticato? GRATIS solo con Email.it: http://www.email.it/f
Sponsor: Prova subito Emailpaghe, e' in prova gratuita sino al 31 dicembre 2010 Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=10679&d=20100918