Crashes with libQtUiTools.a if linked multiple times into the same process (with Bsymbolic-functions flag)

Friedrich W. H. Kossebau kossebau at kde.org
Mon May 13 18:05:54 BST 2013


Am Montag, 13. Mai 2013, 10:06:59 schrieb Thiago Macieira:
> On segunda-feira, 13 de maio de 2013 17.41.58, Friedrich W. H. Kossebau 
wrote:
> > Interesting problem still: so any public symbol from a static lib can
> > potentially appear multiple times in a process, if coming with different
> > libs/modules, and then the first instance of that symbol shadows all other
> > instances, possibly even of incompatible versions? Evil trap...
> 
> This is the same old problem of conflicting symbols. It's nothing new.
> 
> In fact, it still exists *because* it's missing the latest innovation, from
> 2005: hidden symbols.

Never hit this problem with _static_ libs in all the years so far, so new for 
me ;)

((I somehow would have assumed that symbols from static libs are namespaced on 
linking, especially as noone seems to have guarded such linking in any other 
way, also did not catch my attention elsewhere yet. Possibly because people 
were not aware that libQtUiTools is a static and not a shared lib, this fact 
being hidden behind the var ${QT_QTUITOOLS_LIBRARY}))

So, still wondering what the (most) platform-independent fix can be from our 
side to this problem?

Cheers
Friedrich




More information about the kde-core-devel mailing list