Still problems with gcc 3.4 and visibility

Richard Lärkäng nouseforaname at home.se
Sun Nov 28 19:22:39 GMT 2004


On Sunday 28 November 2004 13.04, Thiago Macieira wrote:
> Michael Pyne wrote:
> >$ nm -D ~/kde/lib/kde3/kded_kwalletd.so | grep KDEDModule
> >         U _ZN10KDEDModule11qt_propertyEiiP8QVariant
> >         U _ZN10KDEDModule16staticMetaObjectEv
> >         U _ZN10KDEDModule7qt_castEPKc
> >         U _ZN10KDEDModule7qt_emitEiP8QUObject
> >         U _ZN10KDEDModule9qt_invokeEiP8QUObject
> >         U _ZN10KDEDModuleC2ERK8QCString
> >         U _ZN10KDEDModuleD2Ev
> >         U _ZTI10KDEDModule
> >
> >The output was similar when -fvisibility=hidden was enabled, except that
> > the 'U's were all 'V' instead, indicating a weak symbol.
>
> U means undefined, V is virtual and W is weak.
>
> Since you're listing kded_walled.so, this are how they're supposed to; the
> symbols are imported. Please list libkdeinit_kded.so, which is where the
> symbol is supposed to be:
>
> $ readelf -a /usr/local/kde3/lib/libkdeinit_kded.so | grep TI10KDEDModule
> 00021b44  00021801 R_386_32          00021be0   _ZTI10KDEDModule
> 00021ba4  00021801 R_386_32          00021be0   _ZTI10KDEDModule
>    536: 00021be0    32 OBJECT  WEAK   DEFAULT   21 _ZTI10KDEDModule
>    641: 00021be0    32 OBJECT  WEAK   DEFAULT   21 _ZTI10KDEDModule
>
> The important thing isn't the object's weakness, but its visibility. In
> this case, it's exported ("default").
>
> It shouldn't be defined in kded_walletd.so.

There were some problems with things not exported in KWallet also, the 
attached patch makes KWallet work for me again, OK to commit?

Richard Lärkäng
-------------- next part --------------
A non-text attachment was scrubbed...
Name: kwallet.patch
Type: text/x-diff
Size: 1647 bytes
Desc: not available
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20041128/dd082581/attachment.patch>


More information about the kde-core-devel mailing list