Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Update: Forum Guidelines & Code of Conduct

    QT embedded with X11

    Installation and Deployment
    2
    13
    8316
    Loading More Posts
    • 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.
    • Q
      qtandme last edited by

      Hi,

      I'm trying build QT 4.8.2 for embedded platform. But instead of using the default linux framebuffer, I want to use X11 window system. But I'm not able to build QT with -xvideo -xrender -ximage options. When the QT figures out, its being cross compiled, the 'x' options seems to have been automatically dropped. How do I proceed ? How do I cross compile and will still be able to make use of X11 ?

      Thanks.

      1 Reply Last reply Reply Quote 0
      • SGaist
        SGaist Lifetime Qt Champion last edited by

        Hi and welcome to DevNet,

        Qt embedded is targeted to device that don't have an X11 server running. If you have one you can cross-compile the standard Qt libraries. Though depending on your device distribution this might have already be done for you.

        Hope it helps

        On a side note QT is for Apple's QuickTime, Qt is for our favorite framework :)

        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 Reply Quote 0
        • Q
          qtandme last edited by

          Oops, ok.

          Actually, I'm facing problem with crosscompiling with the standard Qt libraries.

          What I need is,

          Building on: qws/linux-x86-g++
          Building for: qws/linux-arm-g++
          Architecture: arm
          Host architecture: i386

          My configure looks like,
          PKG_CONFIG_SYSROOT_DIR="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot" PKG_CONFIG="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/bin/pkg-config" PKG_CONFIG_PATH="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/pkgconfig:" MAKEFLAGS=" -j8" ./configure -silent -force-pkg-config -opensource -confirm-license -largefile -qt3support -nomake examples -nomake demos -no-glib -no-icu -no-neon -no-avx -no-javascript-jit -xsync -xcursor -xfixes -xinput -xrender -depths 8,16,32 -no-gfx-linuxfb -no-gfx-transformed -no-gfx-qvfb -no-gfx-vnc -no-gfx-multiscreen -no-gfx-directfb -no-mouse-pc -no-mouse-linuxtp -no-mouse-linuxinput -no-mouse-tslib -no-mouse-qvfb -no-kbd-tty -no-kbd-linuxinput -no-kbd-qvfb -release -shared -little-endian -embedded arm -no-gif -no-libmng -qt-zlib -system-libjpeg -system-libpng -no-libtiff -no-freetype -no-openssl -no-sql-sqlite -no-xmlpatterns -multimedia -no-audio-backend -no-phonon -no-phonon-backend -no-svg -no-webkit -script -no-scripttools -no-javascript-jit -no-stl -declarative -no-xinerama -no-cups -no-nis -no-accessibility -no-separate-debug-info -prefix /usr -plugindir /usr/lib/qt/plugins -hostprefix /home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot -fast -no-rpath

          But, I am not able to see support enabled for X11.

          Build .................. libs docs translations
          Configuration .......... silent cross_compile release shared dll embedded largefile precompile_header exceptions_off minimal-config small-config medium-config large-config full-config qt3support embedded reduce_exports ipv6 clock-gettime clock-monotonic mremap getaddrinfo ipv6ifname getifaddrs inotify system-jpeg no-mng system-png png no-gif no-tiff no-freetype zlib alsa concurrent multimedia script declarative release
          Debug .................. no
          Qt 3 compatibility ..... yes
          QtDBus module .......... no
          QtConcurrent code ...... yes
          QtGui module ........... yes
          QtScript module ........ yes
          QtScriptTools module ... no
          QtXmlPatterns module ... no
          Phonon module .......... no
          Multimedia module ...... yes
          SVG module ............. no
          WebKit module .......... no
          JavaScriptCore JIT ..... no
          Declarative module ..... yes
          Declarative debugging ...yes
          Support for S60 ........ no
          Symbian DEF files ...... no
          STL support ............ no
          PCH support ............ yes
          MMX/3DNOW/SSE/SSE2/SSE3. no/no/no/no/no
          SSSE3/SSE4.1/SSE4.2..... no/no/no
          AVX..................... no
          iWMMXt support ......... no
          NEON support ........... no
          IPv6 support ........... yes
          IPv6 ifname support .... yes
          getaddrinfo support .... yes
          getifaddrs support ..... yes
          Accessibility .......... no
          NIS support ............ no
          CUPS support ........... no
          Iconv support .......... no
          Glib support ........... no
          GStreamer support ...... no
          PulseAudio support ..... no
          Large File support ..... yes
          GIF support ............ no
          TIFF support ........... no
          JPEG support ........... plugin (system)
          PNG support ............ yes (system)
          MNG support ............ no
          zlib support ........... yes
          Session management ..... no
          Embedded support ....... arm
          Freetype2 support ...... no
          Graphics (qt) ..........
          Graphics (plugin) ......
          Decorations (qt) ....... styled windows default
          Decorations (plugin) ...
          Keyboard driver (qt) ...
          Keyboard driver (plugin) ..
          Mouse driver (qt) ......
          Mouse driver (plugin) ..
          OpenGL support ......... no
          OpenVG support ......... no
          OpenSSL support ........ no
          Alsa support ........... yes
          ICD support ............ no
          libICU support ......... no

          1 Reply Last reply Reply Quote 0
          • Q
            qtandme last edited by

            I need Qt to be using X11 instead of the default linux framebuffer. How else I can proceed ?

            1 Reply Last reply Reply Quote 0
            • SGaist
              SGaist Lifetime Qt Champion last edited by

              Do you have the x11 arm libs ?

              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 Reply Quote 0
              • Q
                qtandme last edited by

                Yes, I do.

                1 Reply Last reply Reply Quote 0
                • Q
                  qtandme last edited by

                  I need X server to be running on my board. But the Qt application built (embedded) uses linux framebuffer. That's the reason I'm looking into cross compiling Qt with X11.

                  1 Reply Last reply Reply Quote 0
                  • SGaist
                    SGaist Lifetime Qt Champion last edited by

                    Then you don't want to use the qws mkspecs.

                    You have to remove the embedded option and IRCC use -arch arm -xplatform linux-arm-g++ (you might want to make your own mkspec for your toolchain setup so you can reuse it while programming)

                    Hope it helps

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

                    1 Reply Last reply Reply Quote 0
                    • Q
                      qtandme last edited by

                      Yes It did, thanks a ton! :)
                      Now when I want to run a Qt application, how do I specify the display ?
                      Like I need to start the X server and do ./QtApp -display =:0 Something like this ?

                      1 Reply Last reply Reply Quote 0
                      • SGaist
                        SGaist Lifetime Qt Champion last edited by

                        Something like that yes, unless you have a window manager, you should then also be able to start your application from there

                        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 Reply Quote 0
                        • Q
                          qtandme last edited by

                          When I'm cross compiling, I'm facing this kind of issue.

                          $(my_sysroot_path)/usr/include/QtCore/qatomic_armv5.h: Assembler messages:
                          $(my_sysroot_path)/usr/include/QtCore/qatomic_armv5.h:131: Error: no such instruction: `swpb %al,%dl,[%esi]'

                          My configure variables look like

                          PKG_CONFIG_SYSROOT_DIR="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot" PKG_CONFIG="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/bin/pkg-config" PKG_CONFIG_PATH="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/pkgconfig:" MAKEFLAGS=" -j8" ./configure -developer-build -opensource -nomake examples -nomake tests -no-gtkstyle -confirm-license -xplatform linux-omap4-g++ -force-pkg-config -hostprefix /home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot -largefile -nomake examples -nomake demos -no-glib -no-icu -no-neon -no-avx -no-javascript-jit -no-sse -no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -no-iconv -no-icu -no-dbus -no-glib -no-avx -no-neon -no-gif -system-libpng -system-libjpeg -no-openssl -prefix $PWD/qtbase -hostprefix /home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot -no-audio-backend -no-nis -platform linux-g++

                          1 Reply Last reply Reply Quote 0
                          • Q
                            qtandme last edited by

                            I was using Qt verison 4.8.4.

                            Just to verfy I tried using Qt 5.0.2 using configure options:

                            PKG_CONFIG_SYSROOT_DIR="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot" PKG_CONFIG="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/bin/pkg-config" PKG_CONFIG_PATH="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot/usr/lib/pkgconfig:" MAKEFLAGS=" -j8" ./configure -silent -force-pkg-config -opensource -confirm-license -largefile -nomake examples -nomake demos -no-glib -no-icu -no-neon -no-avx -no-javascript-jit -no-sse -no-sse2 -no-sse3 -no-ssse3 -no-sse4.1 -no-sse4.2 -xsync -xcursor -xfixes -xinput -xrender -xplatform linux-omap4-g++ -release -shared -no-gif -qt-zlib -system-libjpeg -system-libpng -no-openssl -no-sql-sqlite -no-audio-backend -no-javascript-jit -no-xinerama -no-cups -no-nis -no-accessibility -no-separate-debug-info -plugindir /usr/lib/qt/plugins -hostprefix /home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot -no-rpath -v -device linux-omap4-g++ -make libs -device-option CROSS_COMPILE="/home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/bin/arm-linux-gnueabihf-" -qt-xcb -no-opengl -no-glib -sysroot /home/carol/OMAP_BUILDROOT/buildroot-2012.11.1/output/host/usr/arm-buildroot-linux-gnueabi/sysroot -no-kms -no-directfb -no-eglfs -xrender

                            I came across bunch of errors.

                            make[5]: Entering directory /home/carol/Documents/Omap/QT_GIT/qt-everywhere-opensource-src-5.0.2/qtdeclarative/src/plugins/qmltooling/qmldbg_qtquick2' compiling qquickviewinspector.cpp In file included from ../../../../include/QtQuick/qsggeometry.h:1:0, from ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsgnode.h:45, from ../../../../include/QtQuick/qsgnode.h:1, from ../../../../include/QtQuick/5.0.2/QtQuick/private/../../../../../src/quick/scenegraph/qsgcontext_p.h:54, from ../../../../include/QtQuick/5.0.2/QtQuick/private/qsgcontext_p.h:1, from ../../../../include/QtQuick/5.0.2/QtQuick/private/../../../../../src/quick/items/qquickwindow_p.h:60, from ../../../../include/QtQuick/5.0.2/QtQuick/private/../../../../../src/quick/items/qquickitem_p.h:62, from ../../../../include/QtQuick/5.0.2/QtQuick/private/qquickitem_p.h:1, from qquickviewinspector.cpp:49: ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h:117:25: error: ‘GLenum’ has not been declared ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h:118:12: error: ‘GLenum’ does not name a type ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h:114:33: error: ‘GL_UNSIGNED_SHORT’ was not declared in this scope ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h: In member function ‘int QSGGeometry::sizeOfIndex() const’: ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h:290:25: error: ‘GL_UNSIGNED_SHORT’ was not declared in this scope ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h:291:30: error: ‘GL_UNSIGNED_BYTE’ was not declared in this scope ../../../../include/QtQuick/../../src/quick/scenegraph/coreapi/qsggeometry.h:292:30: error: ‘GL_UNSIGNED_INT’ was not declared in this scope <...> make[3]: *** [sub-qmltooling-make_first] Error 2 make[3]: Leaving directory /home/carol/Documents/Omap/QT_GIT/qt-everywhere-opensource-src-5.0.2/qtdeclarative/src/plugins'
                            make[2]: *** [sub-plugins-make_first-ordered] Error 2
                            make[2]: Leaving directory /home/carol/Documents/Omap/QT_GIT/qt-everywhere-opensource-src-5.0.2/qtdeclarative/src' make[1]: *** [sub-src-make_first] Error 2 make[1]: Leaving directory /home/carol/Documents/Omap/QT_GIT/qt-everywhere-opensource-src-5.0.2/qtdeclarative'
                            make: *** [module-qtdeclarative-make_first] Error 2

                            When i tried to google search for it, I learnt its because of the opengl. I have used -no-opengl option and I'm still facing the issue. Can you help me with this ?

                            Thanks,
                            Carol

                            1 Reply Last reply Reply Quote 0
                            • SGaist
                              SGaist Lifetime Qt Champion last edited by

                              I would say you have to disable QtQuick from building, but right now i don't know what option to add or folder to remove in order to do that... (It might be as simple as to remove the qtdeclarative folder before configuration)

                              Hope it helps

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

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post