Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Special Interest Groups
  3. QtonPi
  4. QT 5.4 & Qtwayland
QtWS25 Last Chance

QT 5.4 & Qtwayland

Scheduled Pinned Locked Moved QtonPi
6 Posts 4 Posters 5.1k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    LongChair
    wrote on last edited by
    #1

    I have successfully built QT 5.4 from the beta sources package and that is working fine.

    Now I wanted to check soem of the apps i have with QtWayland.

    when configuring qt for a cross build, i saw that wayland hadnt been detected

    @Build options:

    QPA backends:
    DirectFB ............. no
    EGLFS ................ yes
    KMS .................. no
    LinuxFB .............. yes
    XCB .................. yes (system library)
    EGL on X ........... no
    GLX ................ yes
    MIT-SHM ............ yes
    Xcb-Xlib ........... yes
    Xcursor ............ yes (loaded at runtime)
    Xfixes ............. yes (loaded at runtime)
    Xi ................. no
    Xi2 ................ yes
    Xinerama ........... yes (loaded at runtime)
    Xrandr ............. yes (loaded at runtime)
    Xrender ............ yes
    XKB ................ no
    XShape ............. yes
    XSync .............. yes
    XVideo ............. yes
    @

    I have then tried to look into that and found a couple tutorials around to build qtwayland.
    First thing i have noticed is that qtwayland is part of qt 5.4 as i can see.

    as most of the tutorial mention, i grabbed wayland repo and built wayland scanner doing

    @ git clone git://anongit.freedesktop.org/wayland/wayland
    cd wayland
    ./autogen.sh
    ./configure --disable-documentation
    make
    cp wayland-scanner /usr/local/qt5pi/bin
    @

    Scanner seemed to be installed properly
    @pi@ubuntu:~$ which wayland-scanner
    /usr/local/bin/wayland-scanner
    @

    then when i go to qtwayland subdirectory in qt sources and try qmake, here is what i'm getting :

    @pi@ubuntu:~/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland$ qmake
    WARNING: /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:1: Unable to find file for inclusion configure
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:2: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:3: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:4: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:5: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:6: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:7: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:8: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:9: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:10: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:11: Unknown test function: qtCompileTest
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:12: Unknown test function: qtCompileTest
    WARNING: /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:14: Unable to find file for inclusion qt_parts
    Project WARNING: QtWayland requires Wayland 1.2.0 or higher, QtWayland will not be built
    Project WARNING: No xkbcommon 0.2.0 or higher found, disabling support for it
    Project WARNING: QtWayland requires wayland-scanner, QtWayland will not be built
    Project WARNING: QtWayland requires wayland-cursor, QtWayland will not be built
    Project MESSAGE: no wayland-egl support detected, cross-toolkit compatibility disabled
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:36: Parse Error ('message("no wayland-egl support detected, cross-toolkit compatibility disabled");')
    /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro:36: Unterminated conditional block at end of file
    Error processing project file: /home/pi/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland/qtwayland.pro
    @

    I haven't been able to find what is going wrong here. none of the tutorials i have checked come with any hint about it ...

    If anyone can give me a couple hints that'd be awesome :)

    1 Reply Last reply
    0
    • L Offline
      L Offline
      LongChair
      wrote on last edited by
      #2

      Some follow up ...

      I restarted my procedure from scratch following this link http://www.ics.com/blog/building-qt-5-raspberry-pi#.VFOdzfmG98E and getting sligntly different results :

      • Qt 5.4 is build and installed
      • I built wayland scanner as mentionned and both qmake and wayland-scanner are pointing to qt5pi/bin directory (checked with which).

      Now i go to qt-everywhere-opensource-src-5.4.0-beta/qtwayland (which is suppose is the same as the qtwaylend repo as mentionned in the tutorial above.

      when i run qmake there i'm getting :

      @
      pi@ubuntu:~/opt/qt-everywhere-opensource-src-5.4.0-beta/qtwayland$ qmake
      Project WARNING: QtWayland requires Wayland 1.2.0 or higher, QtWayland will not be built
      Project WARNING: No xkbcommon 0.2.0 or higher found, disabling support for it
      Project WARNING: QtWayland requires wayland-scanner, QtWayland will not be built
      Project WARNING: QtWayland requires wayland-cursor, QtWayland will not be built
      Project MESSAGE: no wayland-egl support detected, cross-toolkit compatibility disabled
      @

      It seems that some dependencies are missing, although i have installed on the cross compiling VM the dependencies that were suppsoed ot be required :
      @
      $ sudo apt-get install libxcb1 libxcb1-dev libx11-xcb1 libx11-xcb-dev libxcb-keysyms1 libxcb-keysyms1-dev libxcb-image0 libxcb-image0-dev libxcb-shm0 libxcb-shm0-dev libxcb-icccm4 libxcb-icccm4-dev libxcb-sync0 libxcb-sync0-dev libxcb-render-util0 libxcb-render-util0-dev libxcb-xfixes0-dev libxrender-dev libxcb-shape0-dev libxcb-randr0-dev libxcb-glx0-dev

      $ sudo apt-get install libxkbcommon-dev libudev-dev libwayland-dev libpng12-dev libjpeg8-dev libmtdev-dev autotools-dev autoconf automake bison flex libasound2-dev libxext-dev x11proto-xext-dev libxcursor-dev libxfixes-dev x11proto-fixes-dev libffi-dev libsm-dev libxcomposite-dev
      @

      I'm so close to get it build ... kinda frustrating ... any hint is welcome ;)

      1 Reply Last reply
      0
      • SGaistS Offline
        SGaistS Offline
        SGaist
        Lifetime Qt Champion
        wrote on last edited by
        #3

        Hi,

        To cross-compile you need the dependencies for your target architecture. If you are using your Pi filesystem as sysroot then you can simply install them like you did for your development machine.

        Hope it helps

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        1 Reply Last reply
        0
        • N Offline
          N Offline
          Nobuddy
          wrote on last edited by
          #4

          Still having this problem on Qt 6.8. Can't find any information on Google that's relevant. I'm getting a warning when I run the configure:

          CMake Warning at qtwayland/src/CMakeLists.txt:26 (message):
          QtWayland is missing required dependencies, nothing will be built.
          Although this could be considered an error, the configuration will still
          pass as coin (Qt's continuous integration system) will fail the build if
          configure fails, but will still try to configure the module on targets that
          are missing dependencies.

          Can someone please elaborate what "dependencies" I'm missing? Is there a list somewhere of required libraries (or, better, packages) that need to be in the RasPi sysroot in order for Wayland to compile? I've already tried installing weston, wayland-scanner, libwayland-dev, and wayland-protocols.

          jsulmJ 1 Reply Last reply
          0
          • N Nobuddy

            Still having this problem on Qt 6.8. Can't find any information on Google that's relevant. I'm getting a warning when I run the configure:

            CMake Warning at qtwayland/src/CMakeLists.txt:26 (message):
            QtWayland is missing required dependencies, nothing will be built.
            Although this could be considered an error, the configuration will still
            pass as coin (Qt's continuous integration system) will fail the build if
            configure fails, but will still try to configure the module on targets that
            are missing dependencies.

            Can someone please elaborate what "dependencies" I'm missing? Is there a list somewhere of required libraries (or, better, packages) that need to be in the RasPi sysroot in order for Wayland to compile? I've already tried installing weston, wayland-scanner, libwayland-dev, and wayland-protocols.

            jsulmJ Offline
            jsulmJ Offline
            jsulm
            Lifetime Qt Champion
            wrote on last edited by
            #5

            @Nobuddy said in QT 5.4 & Qtwayland:

            Can someone please elaborate what "dependencies" I'm missing?

            Check the configure log file (config.log if I'm not mistaken).

            https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • N Offline
              N Offline
              Nobuddy
              wrote on last edited by
              #6

              Found it. For future viewers, on Debian-based systems the package one needs to install is waylandpp-dev. This will install all dev dependencies for Wayland.

              1 Reply Last reply
              1

              • Login

              • Login or register to search.
              • First post
                Last post
              0
              • Categories
              • Recent
              • Tags
              • Popular
              • Users
              • Groups
              • Search
              • Get Qt Extensions
              • Unsolved