KDE4 Libs components

David Faure faure at kde.org
Mon Mar 6 03:47:48 GMT 2006

On Saturday 04 March 2006 11:34, Andras Mantia wrote:
> Do we really have to have such long library names with mixed 
> capitalization? 

No, it was only a proposal, but the capitalization follows the Qt4 library capitalization
and improves readability... I agree about "too long" though.

On Saturday 04 March 2006 19:38, Olivier Goffart wrote:
> If it's just that, we still can place the source into different folders, but 
> in the same library  (kdecore/components and kdecore/framework)

This sounds like a solution:
- It reduces the number of libraries kde apps link to (which reduces the
  number of relocations, which makes startup faster)
- It addresses the long-library-names problem, we keep kdecore and kdeui.
- The main difference it makes is that it's not possible to link to only
the 'components', but I'm not sure this is a big problem (see below).

Personally I like the idea - but I would like to hear the reaction of
those who initiatied the idea of the components split.... e.g. Benjamin?

> If the Qt application author want to reuse the KFoo class, he just need to
> copy kfoo.{cpp,h} into his own application. No matter in what library the
> class is
No, not when KFoo depends on a whole load of other things; that's what
the problem is with some of the current code (e.g. see the number of kapp
usage in kde3, even in kdeui widgets - mostly fixed for kde4 already).

Lubos replied:
>  No, they can't, not everybody puts their app under (L)GPL.   [and duplicating code makes maintainance more difficult]
This is true; but if a Qt-only app developer is OK with linking to the 
kde libraries, then he doesn't need the components/framework split.
I thought the idea of "reuseable classes" was to actually extract them
from kdelibs. I did that in a few commercial projects, for instance, the
maintainance thing wasn't really a problem, but those projects certainly
wouldn't want to link to a libkdecore or even a libkdeframeworkcore.

David Faure, faure at kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).

More information about the kde-core-devel mailing list