Compile kwin using yocto for embedded systems (opengles)

Martin Flöser mgraesslin at kde.org
Thu Mar 1 20:29:29 UTC 2018


Am 2018-03-01 20:56, schrieb Jörn M:
> I simply did the same as above for kdeclarative and applied the few
> lines from kwin's kwinglutils_funcs.h
> on all places where the error occurs:
> 
> https://paste.kde.org/pgtkzf5yu

see also https://phabricator.kde.org/D10762

> 
> This leads me to the final error I'm not able to solve:
> 
> eglonxbackend.h:36:27: error: expected ')' before '*' token
> |      EglOnXBackend(Display *display);
> |                            ^
> |
> /home/joern/yocto/tmp/work/cortexa7hf-neon-vfpv4-poky-linux-gnueabi/kwin/5.12.1-r0/git/plugins/platforms/x11/common/eglonxbackend.h:37:58:
> error: 'Display' has not been declared
> 
> https://paste.kde.org/pimqgxedi
> 
> Which component normally declares "Display"?

Display is the XLib Display. It comes in with anything pulling in XLib. 
So most likely the reason for the compile error is that this gets pulled 
in through epoxy normally, but on yocto epoxy is probably built without 
X11 support (which might be questionably, but so what).

I see the following possibilities to address this error:
  * forward declare Display (struct Display should be sufficent)
  * disable building of the EglOnXBackend

Given that epoxy seems to not have X11 support I would say the second 
option is the proper one. But it would mean no compositing support on 
X11 in this build. This makes only sense if you want to use Wayland. If 
you want to use KWin on X11 you need to get epoxy to support X11.

Cheers
Martin


More information about the Plasma-devel mailing list