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. Installation QT 5.11 on Raspberry Pi 3
Forum Updated to NodeBB v4.3 + New Features

Installation QT 5.11 on Raspberry Pi 3

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
60 Posts 7 Posters 21.8k Views 3 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.
  • G gogoer

    @sierdzio said in Installation QT 5.11 on Raspberry Pi 3:

    Use linux-g++ mkspecs instead of the Raspberry Pi one when you compile natively.

    what i need to do?

    i deleted folders, except your list.
    now i use config string:

    ../qt-everywhere-src-5.11.2/configure -v -opengl es2 -eglfs -no-gtk -device linux-rasp-pi-g++ \
    -opensource -confirm-license -reduce-exports \
    -force-pkg-config -nomake examples -no-compile-examples -release \
    -qt-pcre -ssl -evdev -system-freetype -fontconfig -glib -prefix /opt/qt5
    

    but i have error:

    Cannot compile minimal program. The toolchain or QMakeSpec is broken.
    
    sierdzioS Offline
    sierdzioS Offline
    sierdzio
    Moderators
    wrote on last edited by
    #14

    @gogoer said in Installation QT 5.11 on Raspberry Pi 3:

    -device linux-rasp-pi-g++

    Remove that, it should be enough.

    If not, you can specify the mkspecs using this flag:

    configure -platform linux-g++
    

    (Z(:^

    1 Reply Last reply
    1
    • G Offline
      G Offline
      gogoer
      wrote on last edited by
      #15

      Thank you!
      configuration is successfull.
      i start compilation by

      make -j 4
      

      and it compiles about an hour, then gives error:

      make[3]: Leaving directory '/home/pi/otp/qt5/build/qtbase/src/testlib'
      make[2]: Leaving directory '/home/pi/otp/qt5/build/qtbase/src'
      Makefile:48: recipe for target 'sub-src-make_first' failed
      make[1]: *** [sub-src-make_first] Error 2
      make[1]: Leaving directory '/home/pi/otp/qt5/build/qtbase'
      Makefile:52: recipe for target 'module-qtbase-make_first' failed
      make: *** [module-qtbase-make_first] Error 2
      

      what i can do to solve this?

      1 Reply Last reply
      0
      • sierdzioS Offline
        sierdzioS Offline
        sierdzio
        Moderators
        wrote on last edited by
        #16

        That output does not give details about any errors. Run make (without -j) and / or look for real error in the output (something coming from either linker or the compiler).

        (Z(:^

        1 Reply Last reply
        2
        • G Offline
          G Offline
          gogoer
          wrote on last edited by
          #17

          it gives

          g++: internal compiler error: Segmentation fault (program cc1plus) 
          Please submit a full bug report,
          with preprocessed source if appropriate.
          See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
          

          and after gives error i write upper.

          A 1 Reply Last reply
          0
          • sierdzioS Offline
            sierdzioS Offline
            sierdzio
            Moderators
            wrote on last edited by
            #18

            Whoa, that I have not seen before. Perhaps try with some older Qt release, maybe it won't trigger the compiler error. Also, disable tests as it seems to happen in test lib (-nomake tests -nomake examples).

            (Z(:^

            1 Reply Last reply
            0
            • sierdzioS Offline
              sierdzioS Offline
              sierdzio
              Moderators
              wrote on last edited by
              #19

              Also, as @sneubert suggests, cross compilation will allow you to build much, much faster.

              (Z(:^

              1 Reply Last reply
              0
              • mranger90M Offline
                mranger90M Offline
                mranger90
                wrote on last edited by mranger90
                #20

                @gogoer said in Installation QT 5.11 on Raspberry Pi 3:

                g++: internal compiler error: Segmentation fault (program cc1plus)

                That might be an out of memory error. I used to see that when I tried to build Qt in a VM that was not given enough memory.

                1 Reply Last reply
                3
                • G Offline
                  G Offline
                  gogoer
                  wrote on last edited by
                  #21

                  @sierdzio said in Installation QT 5.11 on Raspberry Pi 3:

                  Also, as @sneubert suggests, cross compilation will allow you to build much, much faster.

                  maybe you can give link to manual, how crosscompile QT from windows? i have not linux machine now.
                  i found only manuals to crosscompile from linux.

                  sierdzioS 1 Reply Last reply
                  0
                  • G gogoer

                    @sierdzio said in Installation QT 5.11 on Raspberry Pi 3:

                    Also, as @sneubert suggests, cross compilation will allow you to build much, much faster.

                    maybe you can give link to manual, how crosscompile QT from windows? i have not linux machine now.
                    i found only manuals to crosscompile from linux.

                    sierdzioS Offline
                    sierdzioS Offline
                    sierdzio
                    Moderators
                    wrote on last edited by
                    #22

                    @gogoer said in Installation QT 5.11 on Raspberry Pi 3:

                    maybe you can give link to manual, how crosscompile QT from windows?

                    You like making things harder for yourself, right? ;-) There is this guide but it's known to work for a very limited range of Qt versions only.

                    A much better option is to set up some Linux OS (in a virtual machine or as dual boot on your PC) and cross compile via Linux. It's really much easier to do (which does not mean it is easy...). Installing a Linux distro like Ubuntu takes 20 minutes.

                    (Z(:^

                    1 Reply Last reply
                    2
                    • G Offline
                      G Offline
                      gogoer
                      wrote on last edited by
                      #23

                      @sierdzio said in Installation QT 5.11 on Raspberry Pi 3:

                      A much better option is to set up some Linux OS (in a virtual machine or as dual boot on your PC) and cross compile via Linux. It's really much easier to do (which does not mean it is easy...). Installing a Linux distro like Ubuntu takes 20 minutes.

                      ok, i'll make so))) if have problems (99%) i'll ask here or create new topic?

                      A 1 Reply Last reply
                      0
                      • sierdzioS Offline
                        sierdzioS Offline
                        sierdzio
                        Moderators
                        wrote on last edited by
                        #24

                        As you prefer, I don't mind.

                        (Z(:^

                        1 Reply Last reply
                        0
                        • G Offline
                          G Offline
                          gogoer
                          wrote on last edited by
                          #25

                          I installed Ubuntu 18.04 in VirtualBox and now trying to install QT, following this:
                          http://doc.qt.io/QtForDeviceCreation/qtee-preparing-hardware-rasberrypi.html
                          I downloaded online installer, but i cant find QT for Device Creation. Only QT 5.11.2 and modules.
                          Can I install all i need via online installer?

                          1 Reply Last reply
                          0
                          • G Offline
                            G Offline
                            gogoer
                            wrote on last edited by
                            #26

                            i compile QT in Ubuntu and have error:

                            arm-linux-gnueabihf-g++ -mfloat-abi=hard --sysroot=/opt/qt5pi/sysroot -Wl,-O1 -Wl,-rpath-link,/opt/qt5pi/sysroot/opt/vc/lib -Wl,-rpath-link,/opt/qt5pi/sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link,/opt/qt5pi/sysroot/lib/arm-linux-gnueabihf -o verifyspec verifyspec.o
                            /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find crt1.o: Нет такого файла или каталога
                            /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find crti.o: Нет такого файла или каталога
                            /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lm

                            what can i do?

                            A 1 Reply Last reply
                            0
                            • G gogoer

                              it gives

                              g++: internal compiler error: Segmentation fault (program cc1plus) 
                              Please submit a full bug report,
                              with preprocessed source if appropriate.
                              See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
                              

                              and after gives error i write upper.

                              A Offline
                              A Offline
                              ambershark
                              wrote on last edited by ambershark
                              #27

                              @gogoer said in Installation QT 5.11 on Raspberry Pi 3:

                              it gives

                              g++: internal compiler error: Segmentation fault (program cc1plus) 
                              Please submit a full bug report,
                              with preprocessed source if appropriate.
                              See <file:///usr/share/doc/gcc-4.9/README.Bugs> for instructions.
                              

                              and after gives error i write upper.

                              More than likely you ran out of memory. That's when I see internal compiler errors. You can make g++ use less memory by not using -pipe which will write intermediate stuff to disk rather than piping it to the next process.

                              Like others have said you're much better off cross compiling on a good system, but if you want to continue you just need to lower g++'s memory consumption. The easiest way to do that is not allowing piping.

                              Edit: I replied before I saw @mranger90's post... he's absolutely right, that's exactly what popped into my head too. ;)

                              My L-GPL'd C++ Logger github.com/ambershark-mike/sharklog

                              1 Reply Last reply
                              1
                              • G gogoer

                                @sierdzio said in Installation QT 5.11 on Raspberry Pi 3:

                                A much better option is to set up some Linux OS (in a virtual machine or as dual boot on your PC) and cross compile via Linux. It's really much easier to do (which does not mean it is easy...). Installing a Linux distro like Ubuntu takes 20 minutes.

                                ok, i'll make so))) if have problems (99%) i'll ask here or create new topic?

                                A Offline
                                A Offline
                                ambershark
                                wrote on last edited by
                                #28

                                @gogoer said in Installation QT 5.11 on Raspberry Pi 3:

                                @sierdzio said in Installation QT 5.11 on Raspberry Pi 3:

                                A much better option is to set up some Linux OS (in a virtual machine or as dual boot on your PC) and cross compile via Linux. It's really much easier to do (which does not mean it is easy...). Installing a Linux distro like Ubuntu takes 20 minutes.

                                ok, i'll make so))) if have problems (99%) i'll ask here or create new topic?

                                Definitely get at least a linux vm... using windows for anything other than playing video games is so 1990s ;)

                                Windows lost the OS wars about a decade ago and is very far behind posix OSes now.

                                My L-GPL'd C++ Logger github.com/ambershark-mike/sharklog

                                1 Reply Last reply
                                0
                                • G gogoer

                                  i compile QT in Ubuntu and have error:

                                  arm-linux-gnueabihf-g++ -mfloat-abi=hard --sysroot=/opt/qt5pi/sysroot -Wl,-O1 -Wl,-rpath-link,/opt/qt5pi/sysroot/opt/vc/lib -Wl,-rpath-link,/opt/qt5pi/sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link,/opt/qt5pi/sysroot/lib/arm-linux-gnueabihf -o verifyspec verifyspec.o
                                  /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find crt1.o: Нет такого файла или каталога
                                  /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find crti.o: Нет такого файла или каталога
                                  /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lm

                                  what can i do?

                                  A Offline
                                  A Offline
                                  ambershark
                                  wrote on last edited by
                                  #29

                                  @gogoer said in Installation QT 5.11 on Raspberry Pi 3:

                                  i compile QT in Ubuntu and have error:

                                  arm-linux-gnueabihf-g++ -mfloat-abi=hard --sysroot=/opt/qt5pi/sysroot -Wl,-O1 -Wl,-rpath-link,/opt/qt5pi/sysroot/opt/vc/lib -Wl,-rpath-link,/opt/qt5pi/sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link,/opt/qt5pi/sysroot/lib/arm-linux-gnueabihf -o verifyspec verifyspec.o
                                  /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find crt1.o: Нет такого файла или каталога
                                  /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find crti.o: Нет такого файла или каталога
                                  /opt/qt5pi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/../lib/gcc/arm-linux-gnueabihf/4.8.3/../../../../arm-linux-gnueabihf/bin/ld: cannot find -lm

                                  what can i do?

                                  These errors are because of your sysroot. They come from not having glibc (or whatever libc you use) in the target architecture. Those should be in your sysroot directory.

                                  What is in /opt/qt5pi/sysroot? Is that a valid directory? What's the output of find /opt/qt5pi/sysroot ?

                                  My L-GPL'd C++ Logger github.com/ambershark-mike/sharklog

                                  1 Reply Last reply
                                  2
                                  • G Offline
                                    G Offline
                                    gogoer
                                    wrote on last edited by
                                    #30

                                    i correct sysroot problem, thank you.

                                    i deleted folders except listed upper.

                                    then i configure with:

                                    ../qt-everywhere-src-5.11.2/configure -opengl es2 -device linux-rasp-pi3-g++ -device-option CROSS_COMPILE=arm-linux-gnueabihf- -sysroot /opt/qt5pi/sysroot -prefix /usr/local/qt5pi -opensource -confirm-license -skip qtscript -nomake examples -nomake tests -make libs -pkg-config -no-use-gold-linker -v
                                    

                                    and its configured without errors, just some notes.

                                    during compilation have errors:

                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp: В функции-члене «virtual void QEglFSKmsGbmWindow::resetSurface()»:
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:58:5: ошибка: нет декларации «PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC» в этой области видимости
                                         PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC createPlatformWindowSurface = nullptr;
                                         ^
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:58:46: ошибка: expected «;» before «createPlatformWindowSurface»
                                         PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC createPlatformWindowSurface = nullptr;
                                                                                  ^
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:61:9: ошибка: нет декларации «createPlatformWindowSurface» в этой области видимости
                                             createPlatformWindowSurface = reinterpret_cast<PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC>(
                                             ^
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:61:56: ошибка: expected type-specifier before «PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC»
                                             createPlatformWindowSurface = reinterpret_cast<PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC>(
                                                                                            ^
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:61:56: ошибка: expected «>» before «PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC»
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:61:56: ошибка: expected «(» before «PFNEGLCREATEPLATFORMWINDOWSURFACEEXTPROC»
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:62:68: ошибка: expected «)» before «;» token
                                                 eglGetProcAddress("eglCreatePlatformWindowSurfaceEXT"));
                                                                                                        ^
                                    /opt/qt5pi/qt-everywhere-src-5.11.2/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmwindow.cpp:65:9: ошибка: нет декларации «createPlatformWindowSurface» в этой области видимости
                                         if (createPlatformWindowSurface) {
                                             ^
                                    Makefile:2877: recipe for target '.obj/qeglfskmsgbmwindow.o' failed
                                    make[7]: *** [.obj/qeglfskmsgbmwindow.o] Error 1
                                    make[7]: *** Ожидание завершения заданий…
                                    make[7]: выход из каталога «/opt/qt5pi/qt5build/qtbase/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms»
                                    Makefile:72: recipe for target 'sub-eglfs_kms-make_first' failed
                                    make[6]: *** [sub-eglfs_kms-make_first] Error 2
                                    make[6]: выход из каталога «/opt/qt5pi/qt5build/qtbase/src/plugins/platforms/eglfs/deviceintegration»
                                    Makefile:104: recipe for target 'sub-deviceintegration-make_first-ordered' failed
                                    make[5]: *** [sub-deviceintegration-make_first-ordered] Error 2
                                    make[5]: выход из каталога «/opt/qt5pi/qt5build/qtbase/src/plugins/platforms/eglfs»
                                    Makefile:125: recipe for target 'sub-eglfs-make_first' failed
                                    make[4]: *** [sub-eglfs-make_first] Error 2
                                    make[4]: выход из каталога «/opt/qt5pi/qt5build/qtbase/src/plugins/platforms»
                                    Makefile:102: recipe for target 'sub-platforms-make_first' failed
                                    make[3]: *** [sub-platforms-make_first] Error 2
                                    make[3]: выход из каталога «/opt/qt5pi/qt5build/qtbase/src/plugins»
                                    Makefile:776: recipe for target 'sub-plugins-make_first' failed
                                    make[2]: *** [sub-plugins-make_first] Error 2
                                    make[2]: выход из каталога «/opt/qt5pi/qt5build/qtbase/src»
                                    Makefile:48: recipe for target 'sub-src-make_first' failed
                                    make[1]: *** [sub-src-make_first] Error 2
                                    make[1]: выход из каталога «/opt/qt5pi/qt5build/qtbase»
                                    Makefile:52: recipe for target 'module-qtbase-make_first' failed
                                    make: *** [module-qtbase-make_first] Error 2
                                    

                                    what it can be?

                                    1 Reply Last reply
                                    0
                                    • sierdzioS Offline
                                      sierdzioS Offline
                                      sierdzio
                                      Moderators
                                      wrote on last edited by
                                      #31

                                      Oh, I remember stumbling upon that error myself, but I don't remember how I resolved it myself (possibly by switching OpenGL driver in pi-config and updating sysroot).

                                      These might help:

                                      • gbm solution
                                      • egl hack

                                      (Z(:^

                                      1 Reply Last reply
                                      1
                                      • G Offline
                                        G Offline
                                        gogoer
                                        wrote on last edited by
                                        #32

                                        thank your all!!! i compiled and builed qt 5.10.1. I tryed build 5.11.2, but have errors. I think 5.10.1 is enough.
                                        I installed QTCreator and configured it. But when i compile project, i have error:

                                        sys/cdefs.h: no such file or directory
                                        

                                        file cdefs.h is in /usr/include/sys/cdefs.h, ichecked it.
                                        i do:

                                        export Path=$PATH:/usr/include
                                        

                                        but i have same error still building project in QTCreator.
                                        what i need to do to solve this?

                                        1 Reply Last reply
                                        0
                                        • sierdzioS Offline
                                          sierdzioS Offline
                                          sierdzio
                                          Moderators
                                          wrote on last edited by
                                          #33

                                          Have you followed the guide for setting up Qt Creator for use with RPi? https://wiki.qt.io/RaspberryPi2EGLFS#Qt_Creator

                                          (Z(:^

                                          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