Static plugins and enable final

Thiago Macieira thiago at kde.org
Mon Jan 25 22:13:03 GMT 2010


Em Segunda-feira 25. Janeiro 2010, às 19.42.59, Dario Freddi escreveu:
> Hello people,
> 
> I'm writing this in regard to 220403. To put it short, KAuth (in kdecore)
> is based upon static plugins, which are not built if KDE4_ENABLE_FINAL is
> turned on, resulting in quite bad situations.
> 
> Now, I can write a patch to ditch out static plugins, but that would
> require hardcoding some stuff and doing not-so-good things. Bearable, but
> I'd like to avoid this.
> 
> The second option is activating KDE4_NO_ENABLE_FINAL on kdecore, which I
> suppose is something that is not even taken into consideration. I'd like to
> know if there's a third way out of this, and if not, at least to put write
> that using static plugins is discouraged (at least when dealing with a big
> kde library like kdecore, since solid happily uses them).

Static plugins is discouraged.

Long-term solution is to get rid of them.

Static plugins is for applications built with static Qt. Since Qt is static, 
it can't load a plugin that links to Qt. So the plugins are built as a static 
libraries, which are linked to the target program.

Static plugins were not meant for dynamic Qt, much less for dynamic libraries.

So please get rid of them, either by removing the plugin system and simply 
making the code part of the library, or by making it an actual plugin (an .so 
file) that is loaded at run-time.

In the mean time, what's wrong with the enable-final situation? Why is it a 
problem? What's the compile error?

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
  Senior Product Manager - Nokia, Qt Development Frameworks
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20100125/0f73c4c8/attachment.sig>


More information about the kde-core-devel mailing list