Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. How to build Qt on system without a GUI?
Forum Updated to NodeBB v4.3 + New Features

How to build Qt on system without a GUI?

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
92 Posts 7 Posters 26.4k Views 2 Watching
  • 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.
  • SGaistS Offline
    SGaistS Offline
    SGaist
    Lifetime Qt Champion
    wrote on last edited by
    #23

    Hi,

    What version of xkbcommon do you have installed ?

    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
    • Pavel_47P Offline
      Pavel_47P Offline
      Pavel_47
      wrote on last edited by
      #24

      @closx said in How to build Qt on system without a GUI?:
      I'm not aware what is actually installed ... I've just executed the following instruction, as was suggested previously in this topic (except libxcb-util0 which wasn't found)

      sudo apt-get install libxcb1 libxcb-util0 libpam-dev libcairo-dev libxcb-xinerama0 libev-dev libx11-dev libx11-xcb-dev libxkbcommon0 libxkbcommon-x11-dev libxkbcommon-dev libxcb-dpms0-dev libxcb-xinerama0-dev libxkbfile-dev libxcb-util0-dev libxcb-image0-dev

      jsulmJ 1 Reply Last reply
      0
      • Pavel_47P Pavel_47

        @closx said in How to build Qt on system without a GUI?:
        I'm not aware what is actually installed ... I've just executed the following instruction, as was suggested previously in this topic (except libxcb-util0 which wasn't found)

        sudo apt-get install libxcb1 libxcb-util0 libpam-dev libcairo-dev libxcb-xinerama0 libev-dev libx11-dev libx11-xcb-dev libxkbcommon0 libxkbcommon-x11-dev libxkbcommon-dev libxcb-dpms0-dev libxcb-xinerama0-dev libxkbfile-dev libxcb-util0-dev libxcb-image0-dev

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

        @Pavel_47 Did you install these packages on your target device? Since you're crosscompiling you need them in your sysroot, not on your host machine.

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

        1 Reply Last reply
        1
        • Pavel_47P Offline
          Pavel_47P Offline
          Pavel_47
          wrote on last edited by
          #26

          I've contacted libxkbcommon developers. They suggested me using this command:
          sudo apt-get install libxkbcommon-dev libxkbcommon-x11-dev
          That is what i did, but system informed me that libxkbcommon-dev and libxkbcommon-x11-dev are already the newest versions (i.e. 0.8.2-1~ubuntu 18.04.1).

          Well, I'm trying to rebiuild Qt toolchain once more . Now it's running ...

          1 Reply Last reply
          0
          • Pavel_47P Offline
            Pavel_47P Offline
            Pavel_47
            wrote on last edited by
            #27

            Sorry, I've missed your last suggestion - install libxkbcommon on target (i.e RPi3 in my case). But anyway, how build process on the host can be influenced by what is installed (or not) on that target device ?

            1 Reply Last reply
            0
            • Pavel_47P Offline
              Pavel_47P Offline
              Pavel_47
              wrote on last edited by
              #28

              The new attempt of Qt building is also failed.
              I wonder if anyone has managed to bulid Qt on Ubuntu ?
              What should I check ... or install to resolve the problem ?

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

                Since you are cross-compiling, you need all dependencies for your target. This is usually done installing the libraries on said target and then sync the content of the file system of the target back to the host so the cross-compiler can use them to do its work.

                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
                3
                • Pavel_47P Offline
                  Pavel_47P Offline
                  Pavel_47
                  wrote on last edited by
                  #30

                  I've just checked libxkbcommon-dev and libxkbcommon-x11-dev on RPi. As on Ubuntu they are installed and are newest versions.

                  Pablo J. RoginaP 1 Reply Last reply
                  0
                  • SGaistS Offline
                    SGaistS Offline
                    SGaist
                    Lifetime Qt Champion
                    wrote on last edited by
                    #31

                    Did you sync your RPi filesystem back to your host before trying to build Qt ?

                    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
                    • Pavel_47P Offline
                      Pavel_47P Offline
                      Pavel_47
                      wrote on last edited by
                      #32

                      Yes, at very first time I executed these commands (as it's suggested here https://wiki.qt.io/RaspberryPi2EGLFS):
                      rsync -avz pi@raspberrypi.local:/lib sysroot
                      rsync -avz pi@raspberrypi.local:/usr/include sysroot/usr
                      rsync -avz pi@raspberrypi.local:/usr/lib sysroot/usr
                      rsync -avz pi@raspberrypi.local:/opt/vc sysroot/opt

                      Then I did 3 or 4 other attempts to build, but at each of these attempts I didn't proceed with resync with RPi.
                      Anyway one thing escapes me .... should I keep connection with RPi while running toolchain build on host ?

                      jsulmJ 1 Reply Last reply
                      0
                      • Pavel_47P Pavel_47

                        Yes, at very first time I executed these commands (as it's suggested here https://wiki.qt.io/RaspberryPi2EGLFS):
                        rsync -avz pi@raspberrypi.local:/lib sysroot
                        rsync -avz pi@raspberrypi.local:/usr/include sysroot/usr
                        rsync -avz pi@raspberrypi.local:/usr/lib sysroot/usr
                        rsync -avz pi@raspberrypi.local:/opt/vc sysroot/opt

                        Then I did 3 or 4 other attempts to build, but at each of these attempts I didn't proceed with resync with RPi.
                        Anyway one thing escapes me .... should I keep connection with RPi while running toolchain build on host ?

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

                        @Pavel_47 said in How to build Qt on system without a GUI?:

                        should I keep connection with RPi while running toolchain build on host ?

                        No, you just need to sync your sysroot.

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

                        1 Reply Last reply
                        0
                        • Pavel_47P Offline
                          Pavel_47P Offline
                          Pavel_47
                          wrote on last edited by
                          #34

                          I've checked the location of xkbcommon-compose.h. It's Ok:
                          alt text
                          Then I've tried to compile this:

                          #include <xkbcommon/xkbcommon-compose.h>
                          int main() {}
                          

                          It was also Ok

                          jsulmJ 1 Reply Last reply
                          0
                          • Pavel_47P Pavel_47

                            I've checked the location of xkbcommon-compose.h. It's Ok:
                            alt text
                            Then I've tried to compile this:

                            #include <xkbcommon/xkbcommon-compose.h>
                            int main() {}
                            

                            It was also Ok

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

                            @Pavel_47 Is it in your host system or sysroot?

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

                            1 Reply Last reply
                            0
                            • Pavel_47P Offline
                              Pavel_47P Offline
                              Pavel_47
                              wrote on last edited by
                              #36

                              @jsulm said in How to build Qt on system without a GUI?:

                              @Pavel_47 Is it in your host system or sysroot?

                              Sorry, I didn't understand what you mean ...
                              The location of the screenshot: /usr/include/xkbcommon on my host
                              The location of .c snippet (where I compiled it): ~/raspi/ on my host

                              jsulmJ 1 Reply Last reply
                              0
                              • Pavel_47P Pavel_47

                                @jsulm said in How to build Qt on system without a GUI?:

                                @Pavel_47 Is it in your host system or sysroot?

                                Sorry, I didn't understand what you mean ...
                                The location of the screenshot: /usr/include/xkbcommon on my host
                                The location of .c snippet (where I compiled it): ~/raspi/ on my host

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

                                @Pavel_47 said in How to build Qt on system without a GUI?:

                                /usr/include/xkbcommon on my host

                                That's the point: you need these headers in your sysroot!

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

                                1 Reply Last reply
                                2
                                • Pavel_47P Offline
                                  Pavel_47P Offline
                                  Pavel_47
                                  wrote on last edited by
                                  #38

                                  Indeed !
                                  In ~/raspi/sysroot/usr/include/xkbcommon there is one less file comparing to /usr/include/xkbcommon ... and this missed file is precisely xkbcommon-compose.h.

                                  alt text

                                  So, I copy xkbcommon-compose.h from /usr/include/xkbcommon to ~/raspi/sysroot/usr/include/xkbcommon and then build Qt toolchain once more ?

                                  1 Reply Last reply
                                  0
                                  • Pavel_47P Offline
                                    Pavel_47P Offline
                                    Pavel_47
                                    wrote on last edited by
                                    #39

                                    I copied xkbcommon-compose.h from /usr/include/xkbcommon to ~/raspi/sysroot/usr/include/xkbcommon and then run make once more.
                                    And it failed one more time.
                                    Here is how it finished:
                                    alt text

                                    Any other suggestions ?

                                    Thanks.

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

                                      As we already wrote: you need the library too. And built for your target.

                                      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
                                      1
                                      • Pavel_47P Offline
                                        Pavel_47P Offline
                                        Pavel_47
                                        wrote on last edited by
                                        #41

                                        You mean that the errors announce in the screenshot from previous message are still related to the xkbcommon issue ?
                                        So I should ask xkbcommon developpers for makefile dedicated for RPi3. Correct ?
                                        Let's say I got it, what next ? Where should I put xkbcommon built directory ... i.e. which location in ~/raspi/sysroot.
                                        After all ... I wonder if someone already faced this issue ? Or this probles rose for the 1st time ? What about previous Qt releases ? There were no similar issues ?

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

                                          It's a library that is now provided on all Linux flavours supported by the Qt project. Prior to that, it was bundled with Qt.

                                          So what distribution are you running on your Pi ?

                                          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

                                          • Login

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