Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. How to copy cross-compiled Qt binaries from one computer to another
QtWS25 Last Chance

How to copy cross-compiled Qt binaries from one computer to another

Scheduled Pinned Locked Moved Solved Mobile and Embedded
37 Posts 4 Posters 6.8k 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.
  • K Ketank16
    16 Sept 2019, 08:18

    Hi, So on my current laptop has cross compiled binaries for Qt5.13 with Beaglebone Black as target device. At my workplace, we want to have the ability of working on any desktop or laptop on same target to make different components of our Qt project. Normally as per my knowledge and after seeing some github repos that share precompiled Raspberry Pi binaries, I copied the folder containing qmake and other files in hostprefix directory to another computer but Qt creator on that computer says the qmake is not executable. I also have the toolchain I used on one machine copied to another.

    Is this some kind PATH related issue or copying the binaries doesn't work at all? Because cross compiling is a pain in the ass especially with a platform like Beaglebone black.

    To elaborate the last line, I'm using this method to make the detection of libudev for runtime. When I compiled it on my personal computer it worked but now when I'm trying it on other computers, its giving out this long error. If anyone has experienced something like this in the past, let me know.

    I'm open to solution for any of the problems above, so feel free to suggest me what's going wrong here. TIA.

    J Offline
    J Offline
    jsulm
    Lifetime Qt Champion
    wrote on 16 Sept 2019, 09:20 last edited by
    #2

    @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

    qmake is not executable

    Mark it as executable:

    chmod a+rx PATH_TO_QMAKE
    

    I guess you did not use Linux file system to exchange the files? In that case use tar to preserve the access rights.

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

    K 1 Reply Last reply 16 Sept 2019, 09:25
    3
    • J jsulm
      16 Sept 2019, 09:20

      @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

      qmake is not executable

      Mark it as executable:

      chmod a+rx PATH_TO_QMAKE
      

      I guess you did not use Linux file system to exchange the files? In that case use tar to preserve the access rights.

      K Offline
      K Offline
      Ketank16
      wrote on 16 Sept 2019, 09:25 last edited by
      #3

      @jsulm All the folders I copied from oen computer to another were archived using tar. I also did the chmod a+rx on it. But somehow still qt creator gives this error. Its weird for me too, since all the computers are 64 bit, so that is also not where this error is coming from.

      J 1 Reply Last reply 16 Sept 2019, 09:34
      0
      • K Ketank16
        16 Sept 2019, 09:25

        @jsulm All the folders I copied from oen computer to another were archived using tar. I also did the chmod a+rx on it. But somehow still qt creator gives this error. Its weird for me too, since all the computers are 64 bit, so that is also not where this error is coming from.

        J Offline
        J Offline
        jsulm
        Lifetime Qt Champion
        wrote on 16 Sept 2019, 09:34 last edited by
        #4

        @ketank16 What does

        file PATH_TO_QMAKE
        

        say?

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

        K 1 Reply Last reply 16 Sept 2019, 09:49
        0
        • J jsulm
          16 Sept 2019, 09:34

          @ketank16 What does

          file PATH_TO_QMAKE
          

          say?

          K Offline
          K Offline
          Ketank16
          wrote on 16 Sept 2019, 09:49 last edited by Ketank16
          #5

          @jsulm Hi it says:

          qmake: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/l, BuildID[sha1]=11303ac790128d944e0bcd2bb582aea6002e31ad, for GNU/Linux 3.2.0, with debug_info, not stripped
          

          Additionally, running just qmake gives following output: qmake: could not find a Qt installation of ''
          Could this be the reason?

          J 1 Reply Last reply 16 Sept 2019, 10:25
          0
          • K Ketank16
            16 Sept 2019, 09:49

            @jsulm Hi it says:

            qmake: ELF 64-bit LSB shared object, x86-64, version 1 (GNU/Linux), dynamically linked, interpreter /lib64/l, BuildID[sha1]=11303ac790128d944e0bcd2bb582aea6002e31ad, for GNU/Linux 3.2.0, with debug_info, not stripped
            

            Additionally, running just qmake gives following output: qmake: could not find a Qt installation of ''
            Could this be the reason?

            J Offline
            J Offline
            jsulm
            Lifetime Qt Champion
            wrote on 16 Sept 2019, 10:25 last edited by
            #6

            @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

            running just qmake gives following output:

            I guess this one calls qmake from your distribution provided Qt.
            Your qmake should actually work.
            Are you sure you selected the correct one?
            Did you try to call it manually in a terminal (using whole path)?

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

            K 1 Reply Last reply 16 Sept 2019, 11:11
            0
            • J jsulm
              16 Sept 2019, 10:25

              @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

              running just qmake gives following output:

              I guess this one calls qmake from your distribution provided Qt.
              Your qmake should actually work.
              Are you sure you selected the correct one?
              Did you try to call it manually in a terminal (using whole path)?

              K Offline
              K Offline
              Ketank16
              wrote on 16 Sept 2019, 11:11 last edited by
              #7

              @jsulm Hi, thanks for such extensive help. It looks like GLIBC version is lower on my work computer than my personal laptop.

              /home/lsce/Downloads/Qt5forBBB/bin/qmake: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/lsce/Downloads/Qt5forBBB/bin/qmake)
              /home/lsce/Downloads/Qt5forBBB/bin/qmake: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /home/lsce/Downloads/Qt5forBBB/bin/qmake)
              

              I use Manjaro on my laptop, whereas all work computers are running ubuntu. I'll see what can be done regarding this situation, but I guess upgrading GLIBC by changing distro should sort this out. Thanks again and let me know if you've some thoughts regarding this.

              J 1 Reply Last reply 16 Sept 2019, 12:03
              1
              • K Ketank16
                16 Sept 2019, 11:11

                @jsulm Hi, thanks for such extensive help. It looks like GLIBC version is lower on my work computer than my personal laptop.

                /home/lsce/Downloads/Qt5forBBB/bin/qmake: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /home/lsce/Downloads/Qt5forBBB/bin/qmake)
                /home/lsce/Downloads/Qt5forBBB/bin/qmake: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by /home/lsce/Downloads/Qt5forBBB/bin/qmake)
                

                I use Manjaro on my laptop, whereas all work computers are running ubuntu. I'll see what can be done regarding this situation, but I guess upgrading GLIBC by changing distro should sort this out. Thanks again and let me know if you've some thoughts regarding this.

                J Offline
                J Offline
                jsulm
                Lifetime Qt Champion
                wrote on 16 Sept 2019, 12:03 last edited by
                #8

                @ketank16 I think best way is to use same version of same distribution on both machines if you want to avoid to build two times.

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

                1 Reply Last reply
                1
                • K Ketank16
                  16 Sept 2019, 08:18

                  Hi, So on my current laptop has cross compiled binaries for Qt5.13 with Beaglebone Black as target device. At my workplace, we want to have the ability of working on any desktop or laptop on same target to make different components of our Qt project. Normally as per my knowledge and after seeing some github repos that share precompiled Raspberry Pi binaries, I copied the folder containing qmake and other files in hostprefix directory to another computer but Qt creator on that computer says the qmake is not executable. I also have the toolchain I used on one machine copied to another.

                  Is this some kind PATH related issue or copying the binaries doesn't work at all? Because cross compiling is a pain in the ass especially with a platform like Beaglebone black.

                  To elaborate the last line, I'm using this method to make the detection of libudev for runtime. When I compiled it on my personal computer it worked but now when I'm trying it on other computers, its giving out this long error. If anyone has experienced something like this in the past, let me know.

                  I'm open to solution for any of the problems above, so feel free to suggest me what's going wrong here. TIA.

                  P Offline
                  P Offline
                  Pablo J. Rogina
                  wrote on 16 Sept 2019, 19:32 last edited by
                  #9

                  @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

                  my current laptop has cross compiled binaries for Qt5.13 with Beaglebone Black as target device

                  Out of curiosity, and to help some other users fighting vigorously with such devices, did you follow any guide or instructions that you can share?
                  Thanks in advance.

                  Upvote the answer(s) that helped you solve the issue
                  Use "Topic Tools" button to mark your post as Solved
                  Add screenshots via postimage.org
                  Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

                  K 2 Replies Last reply 17 Sept 2019, 11:03
                  1
                  • P Pablo J. Rogina
                    16 Sept 2019, 19:32

                    @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

                    my current laptop has cross compiled binaries for Qt5.13 with Beaglebone Black as target device

                    Out of curiosity, and to help some other users fighting vigorously with such devices, did you follow any guide or instructions that you can share?
                    Thanks in advance.

                    K Offline
                    K Offline
                    Ketank16
                    wrote on 17 Sept 2019, 11:03 last edited by
                    #10

                    @pablo-j-rogina I have read countless threads and posts on this forum. I've made my own little guide to help my colleagues. Its still a rough draft but I'll share it tonight. Keep in mind that I haven't been able to compile with EGLFS compatibility but yeah, nonetheless it will save time for you or the others.

                    1 Reply Last reply
                    2
                    • P Pablo J. Rogina
                      16 Sept 2019, 19:32

                      @ketank16 said in How to copy cross-compiled Qt binaries from one computer to another:

                      my current laptop has cross compiled binaries for Qt5.13 with Beaglebone Black as target device

                      Out of curiosity, and to help some other users fighting vigorously with such devices, did you follow any guide or instructions that you can share?
                      Thanks in advance.

                      K Offline
                      K Offline
                      Ketank16
                      wrote on 17 Sept 2019, 14:30 last edited by
                      #11

                      @pablo-j-rogina

                      Here you can find the file that I've written. Make sure to suggest some changes too if you find something wrong.

                      P A 2 Replies Last reply 17 Sept 2019, 14:52
                      3
                      • K Ketank16
                        17 Sept 2019, 14:30

                        @pablo-j-rogina

                        Here you can find the file that I've written. Make sure to suggest some changes too if you find something wrong.

                        P Offline
                        P Offline
                        Pablo J. Rogina
                        wrote on 17 Sept 2019, 14:52 last edited by
                        #12

                        @ketank16 thank you very much for sharing your knowledge.
                        I cannot test step by step since I don't have a BBB device, but it looks pretty much detailed and easy to follow.
                        One picky addition if you will: I'd add the "location" (i.e. HOST or BBB) to every step so to be sure where the action/command needs to be run, something like:

                        10. [HOST] Run following command in Qt directory:
                        ...
                        14. [BBB] (Open Beaglebone over SSH and follow this step)
                        

                        Upvote the answer(s) that helped you solve the issue
                        Use "Topic Tools" button to mark your post as Solved
                        Add screenshots via postimage.org
                        Don't ask support requests via chat/PM. Please use the forum so others can benefit from the solution in the future

                        K 1 Reply Last reply 17 Sept 2019, 15:27
                        2
                        • P Pablo J. Rogina
                          17 Sept 2019, 14:52

                          @ketank16 thank you very much for sharing your knowledge.
                          I cannot test step by step since I don't have a BBB device, but it looks pretty much detailed and easy to follow.
                          One picky addition if you will: I'd add the "location" (i.e. HOST or BBB) to every step so to be sure where the action/command needs to be run, something like:

                          10. [HOST] Run following command in Qt directory:
                          ...
                          14. [BBB] (Open Beaglebone over SSH and follow this step)
                          
                          K Offline
                          K Offline
                          Ketank16
                          wrote on 17 Sept 2019, 15:27 last edited by
                          #13

                          @pablo-j-rogina Thanks, already updated the file and completed the guide too. Hopefully people can find it useful from here.

                          A 1 Reply Last reply 20 Sept 2019, 05:24
                          2
                          • K Ketank16
                            17 Sept 2019, 14:30

                            @pablo-j-rogina

                            Here you can find the file that I've written. Make sure to suggest some changes too if you find something wrong.

                            A Offline
                            A Offline
                            Asha
                            wrote on 19 Sept 2019, 06:24 last edited by
                            #14

                            @ketank16

                            Hi,

                            as you said in your pdf file,the seventh step,

                            How to download the sysroot-relativelinks.py,

                            when I open the github it displaying the text file,there is no option for download purpose,

                            K 1 Reply Last reply 20 Sept 2019, 08:21
                            0
                            • K Ketank16
                              17 Sept 2019, 15:27

                              @pablo-j-rogina Thanks, already updated the file and completed the guide too. Hopefully people can find it useful from here.

                              A Offline
                              A Offline
                              Asha
                              wrote on 20 Sept 2019, 05:24 last edited by
                              #15

                              @ketank16

                              Hi,

                              I am trying qt with beagleboneboard and I followed your document,

                              step by step,

                              After./configure(step 10),the result is

                              0_1568956288265_build (1).png

                              Step 11,make -j4 The result is :

                              0_1568956436569_make-j4.png

                              Step 12:make install, The result is

                              0_1568956528353_makeinstall.png
                              0_1568956560709_makeinstall1.png
                              0_1568956576699_makeinstall2.png
                              0_1568956594246_makeinstaller3.png

                              Afer make installation I got the ~/BBB/sysroot/home/debian/Qt5ForBBB directory also,

                              I downloaded the fonts and copied those on to Qt5ForBBB/lib/fonts, and finished with step 14 also,

                              but I am not getting the qtcreator window,why I am not getting qt,please go through the screenshots and let me know if any mistakes is there,

                              as you showed on step 15,

                              How to launch the qt after step 14,please guide me...

                              Thankyou..

                              J K 2 Replies Last reply 20 Sept 2019, 05:36
                              0
                              • A Asha
                                20 Sept 2019, 05:24

                                @ketank16

                                Hi,

                                I am trying qt with beagleboneboard and I followed your document,

                                step by step,

                                After./configure(step 10),the result is

                                0_1568956288265_build (1).png

                                Step 11,make -j4 The result is :

                                0_1568956436569_make-j4.png

                                Step 12:make install, The result is

                                0_1568956528353_makeinstall.png
                                0_1568956560709_makeinstall1.png
                                0_1568956576699_makeinstall2.png
                                0_1568956594246_makeinstaller3.png

                                Afer make installation I got the ~/BBB/sysroot/home/debian/Qt5ForBBB directory also,

                                I downloaded the fonts and copied those on to Qt5ForBBB/lib/fonts, and finished with step 14 also,

                                but I am not getting the qtcreator window,why I am not getting qt,please go through the screenshots and let me know if any mistakes is there,

                                as you showed on step 15,

                                How to launch the qt after step 14,please guide me...

                                Thankyou..

                                J Offline
                                J Offline
                                jsulm
                                Lifetime Qt Champion
                                wrote on 20 Sept 2019, 05:36 last edited by
                                #16

                                @asha said in How to copy cross-compiled Qt binaries from one computer to another:

                                but I am not getting the qtcreator window

                                What do you mean by that?
                                There is no need to cross compile QtCreator for the device unless you want to use it on your device. Simply install QtCreator via installer on your Ubuntu machine and create a Kit there with your cross compiled Qt.

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

                                1 Reply Last reply
                                1
                                • A Asha
                                  20 Sept 2019, 05:24

                                  @ketank16

                                  Hi,

                                  I am trying qt with beagleboneboard and I followed your document,

                                  step by step,

                                  After./configure(step 10),the result is

                                  0_1568956288265_build (1).png

                                  Step 11,make -j4 The result is :

                                  0_1568956436569_make-j4.png

                                  Step 12:make install, The result is

                                  0_1568956528353_makeinstall.png
                                  0_1568956560709_makeinstall1.png
                                  0_1568956576699_makeinstall2.png
                                  0_1568956594246_makeinstaller3.png

                                  Afer make installation I got the ~/BBB/sysroot/home/debian/Qt5ForBBB directory also,

                                  I downloaded the fonts and copied those on to Qt5ForBBB/lib/fonts, and finished with step 14 also,

                                  but I am not getting the qtcreator window,why I am not getting qt,please go through the screenshots and let me know if any mistakes is there,

                                  as you showed on step 15,

                                  How to launch the qt after step 14,please guide me...

                                  Thankyou..

                                  K Offline
                                  K Offline
                                  Ketank16
                                  wrote on 20 Sept 2019, 08:19 last edited by
                                  #17

                                  @asha In your last screenshot, you can see udev errors. Apparently even after installing libudev on Beaglebone black and eventually copying it in sysroot doesn't solve the problem either. But a workaround is to make qmake look for udev in runtime rather than at compile time. The discussion and how-to is described in this thread here. You can follow it for current version of Qt as well. Let me know how the results come out for you.

                                  1 Reply Last reply
                                  1
                                  • A Asha
                                    19 Sept 2019, 06:24

                                    @ketank16

                                    Hi,

                                    as you said in your pdf file,the seventh step,

                                    How to download the sysroot-relativelinks.py,

                                    when I open the github it displaying the text file,there is no option for download purpose,

                                    K Offline
                                    K Offline
                                    Ketank16
                                    wrote on 20 Sept 2019, 08:21 last edited by
                                    #18

                                    @asha Easiest way is make a file with that name on your computer and copy the contents from git file to your local file. Run sudo chmod a+rx Sysroot-relativelinks.py to make it executable and you're good to go.

                                    A 2 Replies Last reply 23 Sept 2019, 10:03
                                    1
                                    • K Ketank16
                                      20 Sept 2019, 08:21

                                      @asha Easiest way is make a file with that name on your computer and copy the contents from git file to your local file. Run sudo chmod a+rx Sysroot-relativelinks.py to make it executable and you're good to go.

                                      A Offline
                                      A Offline
                                      Asha
                                      wrote on 23 Sept 2019, 10:03 last edited by
                                      #19
                                      This post is deleted!
                                      1 Reply Last reply
                                      0
                                      • A Offline
                                        A Offline
                                        Asha
                                        wrote on 23 Sept 2019, 11:15 last edited by
                                        #20
                                        This post is deleted!
                                        1 Reply Last reply
                                        0
                                        • K Ketank16
                                          20 Sept 2019, 08:21

                                          @asha Easiest way is make a file with that name on your computer and copy the contents from git file to your local file. Run sudo chmod a+rx Sysroot-relativelinks.py to make it executable and you're good to go.

                                          A Offline
                                          A Offline
                                          Asha
                                          wrote on 23 Sept 2019, 12:05 last edited by
                                          #21

                                          @Ketank16

                                          Hi,

                                          I followed the same as you said,when I am trying to run

                                          ./Sysroot-relativelinks.py sysroot

                                          getting Output:

                                          /usr/bin/env: 'python': No such file or directory

                                          while getting this can I processed next?

                                          P 1 Reply Last reply 23 Sept 2019, 12:08
                                          0

                                          11/37

                                          17 Sept 2019, 14:30

                                          topic:navigator.unread, 26
                                          • Login

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