Showstoppers, was: Re: Fwd: Re: Release Mode

Kevin Krammer kevin.krammer at gmx.at
Tue Dec 4 23:26:22 GMT 2007


On Tuesday 04 December 2007, Matthias Kretz wrote:
> On Tuesday 04 December 2007, Kevin Krammer wrote:
> > On Tuesday 04 December 2007, Thiago Macieira wrote:
> > > John Tapsell wrote:
> > > >Fredrick,
> > > >  Can we install the phonon plugins in a standard path then?  It makes
> > > >sense for them to be installed outside of the kde subdirectory if they
> > > >are to be used for non-kde apps anyway.
>
> This is a KDE plugin, not a Qt plugin. So I think it belongs where KDE
> goes. That currently the only way to get a working backend in Phonon
> requires the KDE platform plugin is ok, as Qt 4.3 does not ship with Phonon
> yet. So if you want a Qt-only app to use Phonon you need to configure it
> correctly to use KDE (i.e. setting the plugin path env var).

Right.
I was pointing out that the nature of the plugin might require to use a 
different base directory than usual KDE plugins, e.g. when the plugin should 
be available to a Qt application.

> Qt plugins shipped with KDE need to be installed to
> ${PLUGIN_INSTALL_DIR}/plugins. Normally another directory follows for
> namespacing.
>
> The Phonon KDE platfrom plugin is installed like this:
> install(TARGETS kde DESTINATION
> ${PLUGIN_INSTALL_DIR}/plugins/phonon_platform)
>
> This path is automatically added to the Qt library paths by
> KApplication::init. So all KDE apps will have it.

Yes, but this isn't always correct or rather might not be desired. For example 
IIRC there is a QSql plugin in kdepim for using MySQL embedded and it gets 
(or got) installed like that, making it unavailable to a pure Qt application.

I enountered this problem I was trying to use it for the Akonadi server (after 
all it is part of the respective source tree) but since I wasn't running it 
in a full KDE4 session, it didn't find it.
This might or might not be the desired by the respective developer, e.g. an 
application using an Akonadi server configured like this will work in a KDE4 
session (according to Fredrik) but won't in a different session type.

Sine ${PLUGIN_INSTALL_DIR} includes (as far as I know) the kde4/ subdirectory 
part, a CMakeLists.txt which really wants the plugin to be available to Qt 
application would have to need a different one, so that the builder can set 
it accordingly (as Thiago suggested)

Cheers,
Kevin

-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20071205/21088647/attachment.sig>


More information about the kde-core-devel mailing list