kguiaddons uses qpa headers?

David Faure faure at kde.org
Sun Feb 23 16:47:48 UTC 2014


On Sunday 23 February 2014 17:02:55 John Layt wrote:
> Hi,
> 
> I'm building all of Frameworks from scratch for the first time, using the
> openSUSE packages for Qt 5.2, and qguiaddons fails with:
> 
> [ 24%] Building CXX object
> src/CMakeFiles/KF5GuiAddons.dir/util/kmodifierkeyinfoprovider_x11.cpp.o
> /media/build/kdesrc-
> build/src/k5/frameworks/kguiaddons/src/util/kmodifierkeyinfoprovider_x11.cpp
> :26:42: fatal error: qpa/qplatformnativeinterface.h: No such file or
> directory
> 
> This is because qpa headers are considered private and are packaged
> separately by openSUSE.  I'm not sure depending on private/qpa headers is
> such a good thing?  Or is there no other option here?

For kguiaddons there's an alternative, linking to QX11Extras (breaking the 
rules about the dependencies for an "addon").

This is starting to make me wonder if we couldn't change Qt to set a property 
on qApp with the values of Display* and/or xcb connection. But personally I 
would just link to QX11Extras.

*However* note that another framework, called frameworkintegration, *does* 
require the private qpa headers, since it provides a platform theme plugin. No 
way around that there. You need to install the package with the Qt private 
headers.

-- 
David Faure, faure at kde.org, http://www.davidfaure.fr
Working on KDE, in particular KDE Frameworks 5



More information about the Kde-frameworks-devel mailing list