Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Qt app without window manager.

Qt app without window manager.

Scheduled Pinned Locked Moved General and Desktop
35 Posts 3 Posters 25.7k Views 1 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.
  • C Offline
    C Offline
    Cyrilb
    wrote on last edited by
    #1

    Hi my goal is to write a small gui app for ubuntu without window manager.

    And you guessed it, i am stuck!

    First i built a machine with ubuntu desktop, installed Qt5 and built a small Qt console app.
    Than i built a machine with ubuntu server (no window manager), copied the console app i built previously and the depending shared libs in this machine, it didn't run. Ok, then i copied the shared libs to /usr/lib and it ran fine.

    GUI time :)

    Built a small GUI app on ubuntu desktop machine, copied the app and it's dependencies to the ubuntu server machine and of course it didn't run. I copied the app Qt shared libs that the app depended on to /usr/lib again it didn't run.

    Last error is :
    "Failed to load platform plugin "xcb" . Available platforms are:

    Aborted.
    "
    I started googling and i installed a bunch of libraries like libxcb , xorg etc...

    Than i put in plugins/platforms the libqxcb.so library and you guessed it again, no luck.

    :( Has anyone ever done or thought about it?

    1 Reply Last reply
    0
    • U Offline
      U Offline
      unixmania
      wrote on last edited by
      #2

      a window manager may be mandatory for gui app?
      refer to source code, configure options etc.

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

        Hi and welcome to devnet,

        I you don't want any window manager you would have to use i.e the linuxFB plugin.

        The xcb plugins implies the use of x11 which is a window manager.

        You will have to compile Qt 5 yourself to achieve what you want

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

        1 Reply Last reply
        0
        • C Offline
          C Offline
          Cyrilb
          wrote on last edited by
          #4

          Aha, the framebuffer again.

          All the build configurations i've seen use xcb how do i configure Qt to use the linux framebuffer and then build it?

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

            There's also DirectFB if your system supports it.

            Just pass the -linuxfb to configure. For more options you can run configure --help

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

            1 Reply Last reply
            0
            • C Offline
              C Offline
              Cyrilb
              wrote on last edited by
              #6

              Until now i have tried three times to build but all times have failed.

              I followed "Building Qt5 from Git":http://qt-project.org/wiki/Building_Qt_5_from_Git step by step.

              My configuration is: ./configure -opensource -release -force-debug-info -confirm-license -static -qt-sql-mysql -qt-zlib -qt-libpng -qt-libjpeg -no-openssl -no-pch -linuxfb -nomake examples -nomake tests

              and it fails. with this error:
              @/home/user/Qt5.1Git/qt5/qtwebkit/lib/libQt5WebKitWidgets.a: could not read symbols: Malformed archive
              collect2: error: ld returned 1 exit status
              make[3]: *** [../../bin/QtWebProcess] Error 1
              make[3]: Leaving directory /home/user/Qt5.1Git/qt5/qtwebkit/Source/WebKit2' make[2]: *** [sub-WebKit2-WebProcess-pro-make_first-ordered] Error 2 make[2]: Leaving directory /home/user/Qt5.1Git/qt5/qtwebkit/Source'
              make[1]: *** [sub-Source-QtWebKit-pro-make_first-ordered] Error 2
              make[1]: Leaving directory `/home/user/Qt5.1Git/qt5/qtwebkit'
              make: *** [module-qtwebkit-make_first] Error 2@

              At first i had -no-xcb but it failed saying that libqxcb was missing.

              Edit: My g++ version is g++ (Ubuntu/Linaro 4.7.3-1ubuntu1) 4.7.3

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

                Unless you explicitly need webkit you should just not build it. That will save time and hassle

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

                1 Reply Last reply
                0
                • C Offline
                  C Offline
                  Cyrilb
                  wrote on last edited by
                  #8

                  Webkit would've ben nice.

                  Ok, i am trying to build without webkit but i have to delete the webkit directory because the configure script has no option to remove webkit from commpiling. "-no-web" and " nomake webkit " do no work.

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

                    IIRC, building webkit statically has always been problematic.

                    Also, don't forget the licensing implication of building Qt statically

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

                    1 Reply Last reply
                    0
                    • C Offline
                      C Offline
                      Cyrilb
                      wrote on last edited by
                      #10

                      Ahhh painful.

                      The error now is:

                      @make[3]: Leaving directory /home/user/Qt5.1Git/qt5/qtbase/src/network' make[3]: Entering directory /home/user/Qt5.1Git/qt5/qtbase/src/network'
                      make[3]: Warning: File ../../.qmake.cache' has modification time 1.6e+04 s in the future /home/user/Qt5.1Git/qt5/qtbase/bin/qmake -o Makefile network.pro Project MESSAGE: perl -w /home/user/Qt5.1Git/qt5/qtbase/bin/syncqt.pl -module QtNetwork -version 5.1.2 -outdir /home/user/Qt5.1Git/qt5/qtbase /home/user/Qt5.1Git/qt5/qtbase <srcbase> = /home/user/Qt5.1Git/qt5/qtbase <outbase> = /home/user/Qt5.1Git/qt5/qtbase make[3]: Leaving directory /home/user/Qt5.1Git/qt5/qtbase/src/network'
                      make[3]: Entering directory /home/user/Qt5.1Git/qt5/qtbase/src/network' make[3]: Warning: File ../../.qmake.cache' has modification time 1.6e+04 s in the future
                      /home/user/Qt5.1Git/qt5/qtbase/bin/qmake -o Makefile network.pro
                      Project MESSAGE: perl -w /home/user/Qt5.1Git/qt5/qtbase/bin/syncqt.pl -module QtNetwork -version 5.1.2 -outdir /home/user/Qt5.1Git/qt5/qtbase /home/user/Qt5.1Git/qt5/qtbase
                      <srcbase> = /home/user/Qt5.1Git/qt5/qtbase
                      <outbase> = /home/user/Qt5.1Git/qt5/qtbase
                      @

                      it is constantly printing this. Looks like it is stuck in a loop printing this all the time.

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

                        You seem to have some problem with your system clock...

                        You should restart your build from a clean source tree and use a shadow build directory.

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

                        1 Reply Last reply
                        0
                        • C Offline
                          C Offline
                          Cyrilb
                          wrote on last edited by
                          #12

                          What do you mean by system clock? I am using a virtual machine for this.

                          The only thing that is not working from that guide is : scl enable devtoolset-1.1 bash

                          Now i restarted the system and started a new build under root without webkit.

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

                            This line

                            @make[3]: Warning: File `../../.qmake.cache' has modification time 1.6e+04 s in the future
                            @

                            made me think of a clock problem

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

                            1 Reply Last reply
                            0
                            • C Offline
                              C Offline
                              Cyrilb
                              wrote on last edited by
                              #14

                              Finally some progress.

                              The build finished fine. I also built my first app. All ok.

                              But when i try to run the app i get an error:
                              @QFontDatabase: Cannot find font directory /usr/local/Qt-5.1.2/lib/fonts - is Qt installed correctly?@

                              At this stage i haven't executed make install . A note on the guide says :
                              @Note: Installation is only needed if you haven’t used the configure options -developer-build or -prefix “PWD/qtbase”. Otherwise you can just use Qt from the build directory.@

                              And i didn't put -developer-build in my build configuration.
                              Could this be the problem?

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

                                You need to have this folder on your target computer

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

                                1 Reply Last reply
                                0
                                • C Offline
                                  C Offline
                                  Cyrilb
                                  wrote on last edited by
                                  #16

                                  Which directory? PWD/qtbase or /usr/local/Qt-5.1.2/lib/fonts ?
                                  What should it contain?

                                  I will also try a build with -developer-build but currently gitorious is down.

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

                                    /usr/local/Qt-5.1.2/lib/fonts, you need it on your target computer, the one running without window manager. It must contain the font files

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

                                    1 Reply Last reply
                                    0
                                    • C Offline
                                      C Offline
                                      Cyrilb
                                      wrote on last edited by
                                      #18

                                      Ok, on dev platform it worked. The compiled binary is around 150MB.

                                      In the target at first it failed because it couldn't find libicudata.so.48 libicuuc.so.48 libicui18n.so.48 which is strange because i compiled it statically.
                                      Do i need any thing extra in the .pro file for static building the app ?

                                      After copying the requested libs in the target /usr/lib a new error appeared:
                                      @QXcbConnection Could not connect to display@

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

                                        You can build a static library but still have shared dependency.

                                        IIRC you need to tell your application which plugin you want to use

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

                                        1 Reply Last reply
                                        0
                                        • C Offline
                                          C Offline
                                          Cyrilb
                                          wrote on last edited by
                                          #20

                                          Ok, but why is qt still trying to use xcb, i built it for linuxfb?

                                          My build configuration is:
                                          @./configure -opensource -release -force-debug-info -confirm-license -static -qt-sql-mysql -qt-zlib -qt-libpng -qt-libjpeg -no-openssl -no-pch -linuxfb -nomake examples -nomake tests
                                          @

                                          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