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?
QtWS25 Last Chance

How to build Qt on system without a GUI?

Scheduled Pinned Locked Moved Unsolved Installation and Deployment
92 Posts 7 Posters 25.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.
  • Pavel_47P Pavel_47

    Has anyone managed to install Qt toolchain on Ubuntu that was synchronized with RPi running Buster ? If it's the case I will immediately buy new RPi4 and install Buster on it.

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

    @Pavel_47 I plan to do so this week. I already have RPi4, but need to install Buster first. Can't tell you when exactly I will do all this. You can ping me end of week (if it is not that urgent :-)).

    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
      #73

      Finally I've tried to build Qt toolchain for RPi4 using this tutorial:
      Cross-Compile QT 5.12.6 / Raspberry Pi 4
      Once more ... doesn't work.
      Here is what I get while launching configure:

      make[2]: Leaving directory '/home/pavel/qtbase/src/widgets'
      make[1]: Leaving directory '/home/pavel/qtbase/src'
      Makefile:50: recipe for target 'sub-src-make_first' failed
      make: *** [sub-src-make_first] Error 2
      

      Any suggestions ?

      jsulmJ 1 Reply Last reply
      0
      • Pavel_47P Pavel_47

        Finally I've tried to build Qt toolchain for RPi4 using this tutorial:
        Cross-Compile QT 5.12.6 / Raspberry Pi 4
        Once more ... doesn't work.
        Here is what I get while launching configure:

        make[2]: Leaving directory '/home/pavel/qtbase/src/widgets'
        make[1]: Leaving directory '/home/pavel/qtbase/src'
        Makefile:50: recipe for target 'sub-src-make_first' failed
        make: *** [sub-src-make_first] Error 2
        

        Any suggestions ?

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

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

        Any suggestions ?

        You did not post the actual errors - those should be before these lines.
        Also, did you call configure from a clean state?

        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
          #75

          The log is quite huge, but concerning just before lines, here it is:

          rm -f libQt5Widgets.so.5.12.6 libQt5Widgets.so libQt5Widgets.so.5 libQt5Widgets.so.5.12
          /home/pavel/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf-g++ -mfloat-abi=hard --sysroot=/home/pavel/raspi/sysroot/ -Wl,--no-undefined -Wl,--version-script,QtWidgets.version -Wl,-O1 -Wl,--enable-new-dtags -Wl,-z,origin -Wl,-rpath,\$ORIGIN -Wl,-rpath-link,/home/pavel/raspi/sysroot/usr/lib/arm-linux-gnueabihf -Wl,-rpath-link,/home/pavel/raspi/sysroot/lib/arm-linux-gnueabihf -shared -Wl,-soname,libQt5Widgets.so.5 -o libQt5Widgets.so.5.12.6 .obj/qaction.o .obj/qactiongroup.o .obj/qapplication.o .obj/qwidgetbackingstore.o .obj/qboxlayout.o .obj/qgridlayout.o .obj/qlayout.o .obj/qlayoutengine.o .obj/qlayoutitem.o .obj/qshortcut.o .obj/qsizepolicy.o .obj/qstackedlayout.o .obj/qtooltip.o .obj/qwidget.o .obj/qwidgetaction.o .obj/qgesture.o .obj/qstandardgestures.o .obj/qgesturerecognizer.o .obj/qgesturemanager.o .obj/qdesktopwidget.o .obj/qwidgetsvariant.o .obj/qwidgetwindow.o .obj/qwindowcontainer.o .obj/qtestsupport_widgets.o .obj/qopenglwidget.o .obj/qformlayout.o .obj/qwhatsthis.o .obj/qdrawutil.o .obj/qstyle.o .obj/qstylefactory.o .obj/qstyleoption.o .obj/qstyleplugin.o .obj/qstylehelper.o .obj/qcommonstyle.o .obj/qproxystyle.o .obj/qstylepainter.o .obj/qstylesheetstyle.o .obj/qstylesheetstyle_default.o .obj/qpixmapstyle.o .obj/qstyleanimation.o .obj/qwindowsstyle.o .obj/qfusionstyle.o .obj/qframe.o .obj/qabstractscrollarea.o .obj/qfocusframe.o .obj/qwidgetanimator.o .obj/qabstractbutton.o .obj/qabstractslider.o .obj/qbuttongroup.o .obj/qcalendarwidget.o .obj/qcheckbox.o .obj/qcombobox.o .obj/qcommandlinkbutton.o .obj/qdatetimeedit.o .obj/qdial.o .obj/qdockwidget.o .obj/qdockarealayout.o .obj/qeffects.o .obj/qfontcombobox.o .obj/qgroupbox.o .obj/qkeysequenceedit.o .obj/qlabel.o .obj/qlcdnumber.o .obj/qlineedit_p.o .obj/qlineedit.o .obj/qwidgetlinecontrol.o .obj/qmainwindow.o .obj/qmainwindowlayout.o .obj/qmdiarea.o .obj/qmdisubwindow.o .obj/qmenu.o .obj/qmenubar.o .obj/qprogressbar.o .obj/qpushbutton.o .obj/qradiobutton.o .obj/qwidgetresizehandler.o .obj/qdialogbuttonbox.o .obj/qrubberband.o .obj/qscrollarea.o .obj/qscrollbar.o .obj/qsizegrip.o .obj/qslider.o .obj/qabstractspinbox.o .obj/qspinbox.o .obj/qsplashscreen.o .obj/qsplitter.o .obj/qstackedwidget.o .obj/qstatusbar.o .obj/qtabbar.o .obj/qplaintextedit.o .obj/qtextedit.o .obj/qtextbrowser.o .obj/qtabwidget.o .obj/qtoolbar.o .obj/qtoolbarlayout.o .obj/qtoolbararealayout.o .obj/qtoolbarseparator.o .obj/qtoolbox.o .obj/qtoolbutton.o .obj/qtoolbarextension.o .obj/qwidgettextcontrol.o .obj/qcolordialog.o .obj/qdialog.o .obj/qerrormessage.o .obj/qfiledialog.o .obj/qsidebar.o .obj/qfilesystemmodel.o .obj/qfileinfogatherer.o .obj/qfontdialog.o .obj/qinputdialog.o .obj/qmessagebox.o .obj/qprogressdialog.o .obj/qwizard.o .obj/qaccessiblewidget.o .obj/qaccessiblewidgetfactory.o .obj/complexwidgets.o .obj/qaccessiblemenu.o .obj/qaccessiblewidgets.o .obj/rangecontrols.o .obj/simplewidgets.o .obj/itemviews.o .obj/qabstractitemview.o .obj/qheaderview.o .obj/qbsptree.o .obj/qabstractitemdelegate.o .obj/qitemdelegate.o .obj/qitemeditorfactory.o .obj/qstyleditemdelegate.o .obj/qcolumnview.o .obj/qcolumnviewgrip.o .obj/qdatawidgetmapper.o .obj/qdirmodel.o .obj/qlistview.o .obj/qlistwidget.o .obj/qtableview.o .obj/qtablewidget.o .obj/qtreeview.o .obj/qtreewidget.o .obj/qtreewidgetitemiterator.o .obj/qfileiconprovider.o .obj/qgraphicsgridlayout.o .obj/qgraphicsitem.o .obj/qgraphicsitemanimation.o .obj/qgraphicslayout.o .obj/qgraphicslayout_p.o .obj/qgraphicslayoutitem.o .obj/qgraphicslinearlayout.o .obj/qgraphicsproxywidget.o .obj/qgraphicsscene.o .obj/qgraphicsscene_bsp.o .obj/qgraphicsscenebsptreeindex.o .obj/qgraphicssceneevent.o .obj/qgraphicssceneindex.o .obj/qgraphicsscenelinearindex.o .obj/qgraphicstransform.o .obj/qgraphicsview.o .obj/qgraphicswidget.o .obj/qgraphicswidget_p.o .obj/qgraphicslayoutstyleinfo.o .obj/qgraphicsgridlayoutengine.o .obj/qsimplex_p.o .obj/qgraphicsanchorlayout_p.o .obj/qgraphicsanchorlayout.o .obj/qsystemtrayicon.o .obj/qcolormap.o .obj/qcompleter.o .obj/qscroller.o .obj/qscrollerproperties.o .obj/qflickgesture.o .obj/qundostack.o .obj/qundogroup.o .obj/qundoview.o .obj/qsystemtrayicon_x11.o .obj/qguistatemachine.o .obj/qkeyeventtransition.o .obj/qmouseeventtransition.o .obj/qbasickeyeventtransition.o .obj/qbasicmouseeventtransition.o .obj/qgraphicseffect.o .obj/qpixmapfilter.o .obj/qrc_qstyle.o .obj/qrc_qmessagebox.o .obj/moc_qpixmapstyle_p.o  /home/pavel/qtbase/lib/libQt5Gui.so /home/pavel/qtbase/lib/libQt5Core.so -lpthread /home/pavel/raspi/sysroot//usr/lib/arm-linux-gnueabihf/libGLESv2.so   
          ln -s libQt5Widgets.so.5.12.6 libQt5Widgets.so
          ln -s libQt5Widgets.so.5.12.6 libQt5Widgets.so.5
          ln -s libQt5Widgets.so.5.12.6 libQt5Widgets.so.5.12
          rm -f ../../lib/libQt5Widgets.so.5.12.6
          mv -f libQt5Widgets.so.5.12.6 ../../lib/libQt5Widgets.so.5.12.6
          rm -f ../../lib/libQt5Widgets.so
          rm -f ../../lib/libQt5Widgets.so.5
          rm -f ../../lib/libQt5Widgets.so.5.12
          mv -f libQt5Widgets.so ../../lib/libQt5Widgets.so
          mv -f libQt5Widgets.so.5 ../../lib/libQt5Widgets.so.5
          mv -f libQt5Widgets.so.5.12 ../../lib/libQt5Widgets.so.5.12
          make[2]: Leaving directory '/home/pavel/qtbase/src/widgets'
          make[1]: Leaving directory '/home/pavel/qtbase/src'
          Makefile:50: recipe for target 'sub-src-make_first' failed
          make: *** [sub-src-make_first] Error 2
          
          Concerning clean state ... probably not. Last time I tried with RPi3 three months ago and I don't remember the state of the system when I abandoned my attempts wit RPi3.
          But I'll try once more after cleaning
          
          1 Reply Last reply
          0
          • Pavel_47P Offline
            Pavel_47P Offline
            Pavel_47
            wrote on last edited by
            #76

            Sorry, I've bee mistaken: the error occurred after make -j4, ... not after configure

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

              Hear is after clean and launching make:

              constant_mappings.cpp: In function ‘quint64 spiStatesFromQState(QAccessible::State)’:
              constant_mappings.cpp:82:35: error: ‘ATSPI_STATE_READ_ONLY’ was not declared in this scope
                       setSpiStateBit(&spiState, ATSPI_STATE_READ_ONLY);
                                                 ^
              Makefile:2911: recipe for target '.obj/constant_mappings.o' failed
              make[3]: *** [.obj/constant_mappings.o] Error 1
              make[3]: Leaving directory '/home/pavel/qtbase/src/platformsupport/linuxaccessibility'
              Makefile:358: recipe for target 'sub-linuxaccessibility-make_first' failed
              make[2]: *** [sub-linuxaccessibility-make_first] Error 2
              make[2]: Leaving directory '/home/pavel/qtbase/src/platformsupport'
              Makefile:585: recipe for target 'sub-platformsupport-make_first' failed
              make[1]: *** [sub-platformsupport-make_first] Error 2
              make[1]: Leaving directory '/home/pavel/qtbase/src'
              Makefile:50: recipe for target 'sub-src-make_first' failed
              make: *** [sub-src-make_first] Error 2
              
              
              jsulmJ 1 Reply Last reply
              0
              • Pavel_47P Pavel_47

                Hear is after clean and launching make:

                constant_mappings.cpp: In function ‘quint64 spiStatesFromQState(QAccessible::State)’:
                constant_mappings.cpp:82:35: error: ‘ATSPI_STATE_READ_ONLY’ was not declared in this scope
                         setSpiStateBit(&spiState, ATSPI_STATE_READ_ONLY);
                                                   ^
                Makefile:2911: recipe for target '.obj/constant_mappings.o' failed
                make[3]: *** [.obj/constant_mappings.o] Error 1
                make[3]: Leaving directory '/home/pavel/qtbase/src/platformsupport/linuxaccessibility'
                Makefile:358: recipe for target 'sub-linuxaccessibility-make_first' failed
                make[2]: *** [sub-linuxaccessibility-make_first] Error 2
                make[2]: Leaving directory '/home/pavel/qtbase/src/platformsupport'
                Makefile:585: recipe for target 'sub-platformsupport-make_first' failed
                make[1]: *** [sub-platformsupport-make_first] Error 2
                make[1]: Leaving directory '/home/pavel/qtbase/src'
                Makefile:50: recipe for target 'sub-src-make_first' failed
                make: *** [sub-src-make_first] Error 2
                
                
                jsulmJ Offline
                jsulmJ Offline
                jsulm
                Lifetime Qt Champion
                wrote on last edited by
                #78

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

                ATSPI_STATE_READ_ONLY

                This belongs to libatspi. Do you have it and its dev package in your sysroot for RPi?

                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
                  #79

                  You mean in sysroot/lib/ ?
                  No at that place there is no libatspi.

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

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

                    libatspi

                    I've tried to install libatspi and libatspi-dev, but Ubuntu updater couldn't locate these packages. Should they come from synchronization with RPi ?

                    jsulmJ 1 Reply Last reply
                    0
                    • Pavel_47P Pavel_47

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

                      libatspi

                      I've tried to install libatspi and libatspi-dev, but Ubuntu updater couldn't locate these packages. Should they come from synchronization with RPi ?

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

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

                      Should they come from synchronization with RPi ?

                      Yes

                      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
                        #82

                        So, should I install them on RPi and then re-synchronize ?

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

                          The Raspberry Pi also could not locate these packages.

                          jsulmJ 1 Reply Last reply
                          0
                          • Pavel_47P Pavel_47

                            The Raspberry Pi also could not locate these packages.

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

                            @Pavel_47 My Ubuntu 18.04 has libatspi2.0-0 and libatspi2.0-0-dev
                            What is running on your RPi?

                            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
                              #85

                              My Ubuntu 18.04 has libatspi2.0-0 and libatspi2.0-0-dev
                              You have them in /usr/lib/ ?

                              What is running on your RPi?
                              Raspbian 10 (buster)

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

                                If I understood, you managed to build Qt toolchain for RPi4 on your Ubuntu. Is it correct?

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

                                  The execution of one of the 3 resynchronizations (rsync -avz pi@yourpi:/usr/lib sysroot/usr to be exact) resulted in the following error:

                                  sent 1,332,333 bytes received 119,470,015 bytes 1,320,244.24 bytes/sec
                                  total size is 3,341,241,457 speedup is 27.66
                                  rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1668) [generator=3.1.2]

                                  It’s probably related to the cause of make failure. I went up the log of synchronization, displayed on the screen but I did not notice any error.

                                  Any suggestions ?

                                  1 Reply Last reply
                                  0
                                  • Pavel_47P Pavel_47

                                    My Ubuntu 18.04 has libatspi2.0-0 and libatspi2.0-0-dev
                                    You have them in /usr/lib/ ?

                                    What is running on your RPi?
                                    Raspbian 10 (buster)

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

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

                                    You have them in /usr/lib/ ?

                                    In /usr/lib/x86_64-linux-gnu/libatspi.so.0
                                    And Ubuntu provides the packages I mentioned above.
                                    Debian should provide them as well (Raspbian is based on Debian), so you should be able to install them.

                                    "Any suggestions ?" - well, something went wrong, there should be something in the log.

                                    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
                                      #89

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

                                      Debian should provide them as well (Raspbian is based on Debian), so you should be able to install them.
                                      "Any suggestions ?" - well, something went wrong, there should be something in the log.

                                      Yes I also have it on Ubuntu on the same location.
                                      I also checked on Raspberry: it is there - in /user/lib/arm-linux-gnueabihf
                                      But I didn't find it on Ubuntu - in ~/raspi/sysroot/usr/lib/arm-linux-gnueabihf, the folder which was synchronized with RPi.
                                      Concerning your suggestion to look over log ... I didn't find any log file on rsync instruction. Nevertheless I look through over whole display buffer after erroneuous rsync execution (that didn't contain whole log !!!) and didn't find any error.

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

                                        Hi,

                                        If you can find the libraires/headers in your device root file system then using scp might be faster in your case to ensure you copy the files back to your machine.

                                        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
                                          #91

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

                                          Hi,

                                          If you can find the libraires/headers in your device root file system then using scp might be faster in your case to ensure you copy the files back to your machine.

                                          Copied missed libraries from RPi to Ubuntu and rerun build.
                                          Here is as it fails this time:

                                          /home/pavel/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libpthread.a(pthread_create.o): In function __pthread_create_2_1': /build/glibc-FUvrFr/glibc-2.28/nptl/pthread_create.c:697: undefined reference to _dl_stack_flags'
                                          /home/pavel/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libpthread.a(unwind.o): In function unwind_stop': /build/glibc-FUvrFr/glibc-2.28/nptl/unwind.c:72: undefined reference to __pointer_chk_guard_local'
                                          /home/pavel/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libpthread.a(nptl-init.o): In function __pthread_initialize_minimal_internal': /build/glibc-FUvrFr/glibc-2.28/nptl/nptl-init.c:434: undefined reference to _dl_pagesize'
                                          /build/glibc-FUvrFr/glibc-2.28/nptl/nptl-init.c:434: undefined reference to _dl_init_static_tls' /build/glibc-FUvrFr/glibc-2.28/nptl/nptl-init.c:434: undefined reference to _dl_wait_lookup_done'
                                          /home/pavel/raspi/sysroot/usr/lib/arm-linux-gnueabihf/libpthread.a(nptl-init.o): In function __pthread_get_minstack': /build/glibc-FUvrFr/glibc-2.28/nptl/nptl-init.c:443: undefined reference to _dl_pagesize'
                                          collect2: error: ld returned 1 exit status
                                          Makefile:1155: recipe for target '../../lib/libQt5Core.so.5.12.6' failed
                                          make[2]: *** [../../lib/libQt5Core.so.5.12.6] Error 1
                                          make[2]: Leaving directory '/home/pavel/qtbase/src/corelib'
                                          Makefile:198: recipe for target 'sub-corelib-make_first' failed
                                          make[1]: *** [sub-corelib-make_first] Error 2
                                          make[1]: Leaving directory '/home/pavel/qtbase/src'
                                          Makefile:50: recipe for target 'sub-src-make_first' failed
                                          make: *** [sub-src-make_first] Error 2

                                          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