Project ERROR: Unknown module(s) in QT: waylandclient-private
-
Ok, I've missed something, you have the dev branch checked out. There's been a big rework of the build handling.
I'm not yet used to the internal details but I think you need to use something like:QMAKE_LIBDIR_XCOMPOSITE+=/path/to/xcomposite/libs/ QMAKE_INCDIR_XCOMPOSITE+=/path/to/xcomposite/includes/
in place of the INCLUDEPATH and LIBS variables.
-
wrote on 1 Feb 2017, 01:27 last edited by
Is xcomposite a separate dependency from libxkbcommon? If so, it doesn't seem that the xcomposite dependency is documented anywhere.
-
wrote on 1 Feb 2017, 13:34 last edited by ybakos 2 Feb 2017, 03:08
I've built xcomposite from source and installed in ~/install/lib.
I am indeed on the dev branch of qtwayland. I've pulled the latest HEAD.
My qtwayland.pro contains:
requires(linux:!android) load(qt_parts) INCLUDEPATH += /home/ybakos/install/include LIBS +=-L/home/ybakos/install/lib QMAKE_INCDIR_XCOMPOSITE+=/home/ybakos/install/include QMAKE_LIBDIR_XCOMPOSITE+=/home/ybakos/install/lib
Yet I still see the same errors in the General Messages panel.
I also get the same results when commenting out
INCLUDEPATH
andLIBS
and just using theQMAKE*
config vars.I also get the same results when using the 5.8 branch.
I've now also tried building qtwayland without using QtCreator. The output of just
qmake
(no additional options passed) is:Info: creating cache file /home/ybakos/projects/qtwayland/.qmake.cache Running configuration tests... Checking for Wayland client library... yes Checking for Wayland cursor library... yes Checking for wayland-scanner... yes Checking for DRM EGL Server... yes Checking for libhybris EGL Server... no Checking for Wayland EGL library... yes Checking for XComposite... yes Checking for GLX... yes Checking for wayland-server... yes Done running configuration tests. Configure summary: Qt Wayland Drivers: EGL .................................... yes Rasberry Pi ............................ no XComposite EGL ......................... yes XComposite GLX ......................... yes DRM EGL ................................ yes libhybris EGL .......................... no Qt Wayland Client ........................ yes Qt Wayland Compositor .................... yes
However, running
make
results in a linker error: http://pastebin.com/3bL8c7JyThank you for any tips, @SGaist .
-
Do you have the dev package from libxkbcommon installed ? If so which version ?
-
wrote on 6 Feb 2017, 17:50 last edited by ybakos 2 Jun 2017, 17:52
All right. I have now installed the libxkbcommon-devel package, version 0.6.1.
$ rpm -q libxkbcommon-devel libxkbcommon-devel-0.6.1-1.fc23.x86_64
I also pulled the latest xkbcommon, built and reinstalled in ~/install/lib.
When rebuilding qtwayland, I see the same error.
The contents of my ~/install/lib are listed in a pastebin here.
Thanks again, @SGaist .
-
Did you check in the build log that you are using your own build of libxkbcommon ?
-
wrote on 7 Feb 2017, 05:40 last edited by
@SGaist I haven't found a reference to libxkbcommon anywhere in the log produced by make. I've pasted the entire results of make here.
Am I looking in the wrong place?
-
wrote on 7 Feb 2017, 21:30 last edited by Alex S. 2 Jul 2017, 21:32
I'm seeing similar problems with using Wayland compositor and then in my attempts to build the QtWayland module (Qt 5.8). It would be good if some comprehensive instructions (incl. dependencies) could be provided.
-
wrote on 13 Feb 2017, 13:13 last edited by
qwaylandxkb.cpp only includes
#include <xkbcommon/xkbcommon-keysyms.h>
Yet
xkb_keysym_to_utf32
is defined in xkbcommon/xkbcommon.h.But even if I include that header in qwaylandxkb.cpp, I still get the same error.
Grrrr!
I do notice that in my config.cache there is no mention of xkbcommon, unlike the other dependencies.
-
wrote on 13 Feb 2017, 13:33 last edited by
Ah, but qwaylandxkb.cpp does include qwaylandxkb.h, which in turn includes xkbcommon/xkbcommon.h.
I've perhaps noticed another clue. During a
make clean
I see the error:Project ERROR: Library 'xkbcommon_evdev' is not defined.
I've also found the possibly relevant bugs:
-
wrote on 13 Feb 2017, 13:53 last edited by
I've filed a new bug report:
https://bugreports.qt.io/browse/QTBUG-58839 -
Thanks for sharing your findings and the link !
-
wrote on 14 Feb 2017, 21:55 last edited by
But isn't there something I can do to fix this? (Is it a build config?)
I'm open to suggestions.
In the mean time, I'm going to set up a dev env on Fedora 25 and see if I get the same error.
-
wrote on 15 Feb 2017, 17:25 last edited by
Same environment configuration on Fedora 25, and the same build error occurs.
Is there some detail regarding the config/make of libxkbcommon that is missing? -
I'm not yet used to the new feature build, so there might be a
-lxkbcommon
generation line missing somewhere but I don't know yet where to exactly look for it. -
wrote on 19 Feb 2017, 18:15 last edited by ybakos
I found a similar build issue in another project to see if I could find some clues. It too mentions something about a
-lxkbcommon
issue.On my machine, the output of
pkg-config --libs xkbcommon
-L/home/ybakos/install/lib -lxkbcommon
I've tried building with:
LDFLAGS="-L/home/ybakos/install/lib -lxkbcommon" CFLAGS="-I/home/ybakos/install/include" make
But still have the same error.
The output of
uname -a
is:Linux hades-fedora-localdomain 4.7.3-100.fc23.x86_64 #1 SMP Wed Sep 7 17:26:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
-
Try rather at the
qmake
level:qmake LIBS+="-L/home/ybakos/install/lib -I/home/ybakos/install/include -lxkbcommon"
-
wrote on 20 Feb 2017, 12:59 last edited by
Thanks @SGaist ... but after removing prior qmake configs, running
qmake LIBS+="-L/home/ybakos/install/lib -I/home/ybakos/install/include -lxkbcommon"
, and thenmake
, I get the same error. Also the same when I runmake
with theLDFLAGS
andCFLAGS
set. -
wrote on 20 Feb 2017, 13:42 last edited by
I've just now tried opening the qtwayland project in Qt Creator again for the first time since trying to build from the command line.
The good (?) news is that the only error I am seeing in the General Messages are:
[Inexact] Project MESSAGE: perl -w /home/ybakos/Qt/5.8/gcc_64/bin/syncqt.pl -module QtWaylandClient -version 5.8.1 -outdir /home/ybakos/projects/build-qtwayland-Desktop_Qt_5_8_0_GCC_64bit-Debug /home/ybakos/projects/qtwayland [Inexact] Project MESSAGE: perl -w /home/ybakos/Qt/5.8/gcc_64/bin/syncqt.pl -module QtWaylandCompositor -version 5.8.1 -outdir /home/ybakos/projects/build-qtwayland-Desktop_Qt_5_8_0_GCC_64bit-Debug /home/ybakos/projects/qtwayland Project ERROR: Library 'xkbcommon_evdev' is not defined.
To my knowledge, xkbcommon_evdev isn't a separate library... how can I squelch this error? I feel like this is somehow related to my build issue.
15/34