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. qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
Forum Updated to NodeBB v4.3 + New Features

qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.

Scheduled Pinned Locked Moved Solved Installation and Deployment
183 Posts 87 Posters 954.6k Views 8 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.
  • gde23G Offline
    gde23G Offline
    gde23
    wrote on last edited by
    #108

    I, think I just had the same problem (on Debian 10). Did a sys-update -> QtCreator does not start anymore.
    How I got QtCreator to start again is by adding a soft link to libxcb-util since it seems that the platformplugi is trying to load the wrong version?

    sudo ln -s /usr/lib/x86_64-linux-gnu/libxcb-util.so.0 /usr/lib/x86_64-linux-gnu/libxcb-util.so.1
    

    That might not be a perfect solution but now I can use it again at least.

    1 Reply Last reply
    0
    • SGaistS SGaist

      @jarvis said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

      QFactoryLoader::QFactoryLoader() looking at "/usr/bin/platforms/libqminimalegl.so"
      Got keys from plugin meta data ("minimalegl")
      QFactoryLoader::QFactoryLoader() looking at "/usr/bin/platforms/libqoffscreen.so"
      Got

      Hi,

      Start your application with the QT_DEBUG_PLUGINS environment variable set to 1 to get more information.

      ali-aydinA Offline
      ali-aydinA Offline
      ali-aydin
      wrote on last edited by
      #109

      hi,@SGaist
      how to start application with the QT_DEBUG_PLUGINS??

      1 Reply Last reply
      0
      • V Violet Giraffe

        @Matriarch, thank you,

        sudo apt-get install libxcb-xinerama0
        

        worked for me on Ubuntu 20.04. Shame one has to scroll so deep down into the discussion before finding the answer.

        Also, I recently spent a lot of time getting a Qt application to run in a Github Actions VM - I was battling the xcb errors. Here's the complete list of things that needed to be installed:

        sudo apt-get install -qq libglu1-mesa-dev libx11-xcb-dev '^libxcb*'
        
        ali-aydinA Offline
        ali-aydinA Offline
        ali-aydin
        wrote on last edited by
        #110

        hello @Violet-Giraffe
        it worked for me
        thank you

        1 Reply Last reply
        0
        • S Srinivas Reddy

          I am using Qt-5.15.0, got the same problem.
          More details are:
          QLibraryPrivate::loadPlugin failed on "/opt/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so" : "Cannot load library /opt/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0: cannot open shared object file: No such file or directory)"

          Solved by installing the dependent package.
          Command to install: sudo apt-get install libxcb-xinerama0

          A Offline
          A Offline
          Alireza Kazemipour
          wrote on last edited by
          #111

          @Srinivas-Reddy Yes, that's the solution. ❤️

          1 Reply Last reply
          0
          • S Srinivas Reddy

            I am using Qt-5.15.0, got the same problem.
            More details are:
            QLibraryPrivate::loadPlugin failed on "/opt/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so" : "Cannot load library /opt/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0: cannot open shared object file: No such file or directory)"

            Solved by installing the dependent package.
            Command to install: sudo apt-get install libxcb-xinerama0

            L Offline
            L Offline
            LTossit
            wrote on last edited by LTossit
            #112

            Thanks, now it works!

            1 Reply Last reply
            0
            • S Srinivas Reddy

              I am using Qt-5.15.0, got the same problem.
              More details are:
              QLibraryPrivate::loadPlugin failed on "/opt/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so" : "Cannot load library /opt/Qt/5.15.0/gcc_64/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0: cannot open shared object file: No such file or directory)"

              Solved by installing the dependent package.
              Command to install: sudo apt-get install libxcb-xinerama0

              S Offline
              S Offline
              sonicss
              wrote on last edited by
              #113

              @Srinivas-Reddy I solved this issue, tks

              1 Reply Last reply
              0
              • U Offline
                U Offline
                UltraBlack_
                wrote on last edited by UltraBlack_
                #114

                Hey there,
                it seems like I am facing the same issue as well, on Arch once again.
                I have already tried debugging with QT_DEBUG_PLUGINS=1 (https://termbin.com/uszc - After fixage) but after solving all of the errors there I still wasn't able to fix this.
                The applications run fine when executing them with sudo, but just not otherwise.
                Do you have and Ideas?
                Thanks!

                JonBJ 1 Reply Last reply
                0
                • U UltraBlack_

                  Hey there,
                  it seems like I am facing the same issue as well, on Arch once again.
                  I have already tried debugging with QT_DEBUG_PLUGINS=1 (https://termbin.com/uszc - After fixage) but after solving all of the errors there I still wasn't able to fix this.
                  The applications run fine when executing them with sudo, but just not otherwise.
                  Do you have and Ideas?
                  Thanks!

                  JonBJ Offline
                  JonBJ Offline
                  JonB
                  wrote on last edited by
                  #115

                  @UltraBlack_
                  Please search again for your error message, which is qt.qpa.xcb: could not connect to display. There are plenty of posts about that on this forum and elsewhere. As I wrote earlier that means:

                  Not an xcb library loading problem, rather however your X display is set up/connecting.

                  Since you say it runs under sudo, I can only imagine either your permissions or your X environment is set up to allow that but not for your non-sudo user.

                  As always, try to run an xterm. If you cannot run that you know you do not have a Qt problem.

                  1 Reply Last reply
                  2
                  • D Offline
                    D Offline
                    Dariusz
                    wrote on last edited by
                    #116

                    Same problem here.
                    When I run app freshly build everything works.
                    But when I want to > process.setArguments(["--set-rpath", "./", releaseFile]) Then everything breaks. Error :

                    Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
                    qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
                    qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
                    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
                    

                    Its driving me nuts. Adding rpath relative to current binary/folder breaks everything ;/

                    jsulmJ 1 Reply Last reply
                    0
                    • D Dariusz

                      Same problem here.
                      When I run app freshly build everything works.
                      But when I want to > process.setArguments(["--set-rpath", "./", releaseFile]) Then everything breaks. Error :

                      Warning: Ignoring WAYLAND_DISPLAY on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
                      qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
                      qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
                      This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
                      

                      Its driving me nuts. Adding rpath relative to current binary/folder breaks everything ;/

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

                      @Dariusz said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                      Adding rpath relative to current binary/folder

                      It is relative to current working directory - are you sure it is the correct one?

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

                      1 Reply Last reply
                      0
                      • D Offline
                        D Offline
                        Dariusz
                        wrote on last edited by
                        #118

                        @jsulm said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                        @Dariusz said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                        Adding rpath relative to current binary/folder

                        It is relative to current working directory - are you sure it is the correct one?

                        Relative to the current working directory... but if I move exe to a different directory, then will the path be relative to that new directory or old one?
                        Its all in root of app, I even tried to copy plugins content out of plugins folder and in to root too. Nothing seems to be working.

                        jsulmJ 1 Reply Last reply
                        0
                        • D Dariusz

                          @jsulm said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                          @Dariusz said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                          Adding rpath relative to current binary/folder

                          It is relative to current working directory - are you sure it is the correct one?

                          Relative to the current working directory... but if I move exe to a different directory, then will the path be relative to that new directory or old one?
                          Its all in root of app, I even tried to copy plugins content out of plugins folder and in to root too. Nothing seems to be working.

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

                          @Dariusz said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                          but if I move exe to a different directory, then will the path be relative to that new directory or old one?

                          Well, yes it should be the working directory of the process you start, so the one where the exe is located.

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

                          D 1 Reply Last reply
                          0
                          • jsulmJ jsulm

                            @Dariusz said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                            but if I move exe to a different directory, then will the path be relative to that new directory or old one?

                            Well, yes it should be the working directory of the process you start, so the one where the exe is located.

                            D Offline
                            D Offline
                            Dariusz
                            wrote on last edited by
                            #120

                            @jsulm Yep, then should be relative. Looking at argument I pass process.setArguments(["--set-rpath", "./", releaseFile]) I set rpath to be ./ which is I take relative to exe dir.
                            He still fails to properly solve the xbc/wayland stuff. Do I need to dig in to xcb library themself, and remap them too to point to correct qt folders or something? I'll ldd them see what they look for where.
                            Maybe they need configuring too to be relative to xx project.

                            1 Reply Last reply
                            0
                            • H Offline
                              H Offline
                              HlaElks
                              wrote on last edited by
                              #121

                              Hi, the displayed message may indicate these two paths(

                              /home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins/platforms/libqxcb.so
                              /home/lis/.local/lib/python3.9/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so
                              
                              

                              ) are mixed. How should I fix this? . Thanks!

                              QFactoryLoader::QFactoryLoader() looking at "/home/lis/.local/lib/python3.9/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so"
                              Found metadata in lib /home/lis/.local/lib/python3.9/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so, metadata=
                              {
                                  "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                                  "MetaData": {
                                      "Keys": [
                                          "xcb"
                                      ]
                                  },
                                  "archreq": 0,
                                  "className": "QXcbIntegrationPlugin",
                                  "debug": false,
                                  "version": 331520
                              }
                              Got keys from plugin meta data ("xcb")
                              QFactoryLoader::QFactoryLoader() checking directory path "/usr/bin/platforms" ...
                              loaded library "/home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins/platforms/libqxcb.so"
                              
                              qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins" even though it was found.
                              
                              
                              JonBJ 1 Reply Last reply
                              0
                              • H HlaElks

                                Hi, the displayed message may indicate these two paths(

                                /home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins/platforms/libqxcb.so
                                /home/lis/.local/lib/python3.9/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so
                                
                                

                                ) are mixed. How should I fix this? . Thanks!

                                QFactoryLoader::QFactoryLoader() looking at "/home/lis/.local/lib/python3.9/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so"
                                Found metadata in lib /home/lis/.local/lib/python3.9/site-packages/PyQt5/Qt5/plugins/platforms/libqxcb.so, metadata=
                                {
                                    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
                                    "MetaData": {
                                        "Keys": [
                                            "xcb"
                                        ]
                                    },
                                    "archreq": 0,
                                    "className": "QXcbIntegrationPlugin",
                                    "debug": false,
                                    "version": 331520
                                }
                                Got keys from plugin meta data ("xcb")
                                QFactoryLoader::QFactoryLoader() checking directory path "/usr/bin/platforms" ...
                                loaded library "/home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins/platforms/libqxcb.so"
                                
                                qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins" even though it was found.
                                
                                
                                JonBJ Offline
                                JonBJ Offline
                                JonB
                                wrote on last edited by
                                #122

                                @HlaElks
                                I don't know which of the cv2 versus the PyQt5 ones you want/need to load. But if you want to find out why /home/lis/.local/lib/python3.9/site-packages/cv2/qt/plugins/platforms/libqxcb.so failed to load you might run ldd on it and examine the output for a missing dependency. Whether that is what you need to know I don't know.

                                1 Reply Last reply
                                0
                                • A Offline
                                  A Offline
                                  actionmystique
                                  wrote on last edited by actionmystique
                                  #123

                                  Hi there. I've encountered the same type of issue when running Seagate's:

                                  ./run_SeaTools.sh
                                  qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/x86_64-linux-gnu/qt5/plugins:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" even though it was found.
                                  

                                  I could not read all the posts in this thread, but I tried some of the proposed solutions which did not solve anything in my case:

                                  # apt install --reinstall libqt5gui5 qtbase5-dev qt5dxcb-plugin libxcb-xinerama0
                                  ...
                                  # export QT_DEBUG_PLUGINS=1
                                  # export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms
                                  # ./run_SeaTools.sh 
                                  qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/x86_64-linux-gnu/qt5/plugins:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" even though it was found.
                                  This application failed to start because no Qt platform plugin could be initialized.
                                  ...
                                  

                                  Any suggestion?

                                  JonBJ SGaistS 2 Replies Last reply
                                  0
                                  • A actionmystique

                                    Hi there. I've encountered the same type of issue when running Seagate's:

                                    ./run_SeaTools.sh
                                    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/x86_64-linux-gnu/qt5/plugins:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" even though it was found.
                                    

                                    I could not read all the posts in this thread, but I tried some of the proposed solutions which did not solve anything in my case:

                                    # apt install --reinstall libqt5gui5 qtbase5-dev qt5dxcb-plugin libxcb-xinerama0
                                    ...
                                    # export QT_DEBUG_PLUGINS=1
                                    # export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms
                                    # ./run_SeaTools.sh 
                                    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/x86_64-linux-gnu/qt5/plugins:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" even though it was found.
                                    This application failed to start because no Qt platform plugin could be initialized.
                                    ...
                                    

                                    Any suggestion?

                                    JonBJ Offline
                                    JonBJ Offline
                                    JonB
                                    wrote on last edited by
                                    #124

                                    @actionmystique
                                    As has been said many times, the first thing to try is running with environment variable QT_DEBUG_PLUGINS=1.
                                    When you have located the xcb .so file, you might also run ldd on it to see if that tells you anything is missing.

                                    1 Reply Last reply
                                    0
                                    • A actionmystique

                                      Hi there. I've encountered the same type of issue when running Seagate's:

                                      ./run_SeaTools.sh
                                      qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/x86_64-linux-gnu/qt5/plugins:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" even though it was found.
                                      

                                      I could not read all the posts in this thread, but I tried some of the proposed solutions which did not solve anything in my case:

                                      # apt install --reinstall libqt5gui5 qtbase5-dev qt5dxcb-plugin libxcb-xinerama0
                                      ...
                                      # export QT_DEBUG_PLUGINS=1
                                      # export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms
                                      # ./run_SeaTools.sh 
                                      qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/lib/x86_64-linux-gnu/qt5/plugins:/usr/lib/x86_64-linux-gnu/qt5/plugins/platforms" even though it was found.
                                      This application failed to start because no Qt platform plugin could be initialized.
                                      ...
                                      

                                      Any suggestion?

                                      SGaistS Offline
                                      SGaistS Offline
                                      SGaist
                                      Lifetime Qt Champion
                                      wrote on last edited by
                                      #125

                                      Hi

                                      @actionmystique why are you trying to run a GUI application as root ?

                                      How did you become root in the first place ?

                                      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
                                      • A Offline
                                        A Offline
                                        actionmystique
                                        wrote on last edited by
                                        #126

                                        @SGaist

                                        why are you trying to run a GUI application as root ?

                                        root is required to run /usr/bin/env which is used in the script. I do no see any reason why being root may be the root ;-) cause for this issue.

                                        How did you become root in the first place ?

                                        Does it really matter?

                                        JonBJ 1 Reply Last reply
                                        0
                                        • A actionmystique

                                          @SGaist

                                          why are you trying to run a GUI application as root ?

                                          root is required to run /usr/bin/env which is used in the script. I do no see any reason why being root may be the root ;-) cause for this issue.

                                          How did you become root in the first place ?

                                          Does it really matter?

                                          JonBJ Offline
                                          JonBJ Offline
                                          JonB
                                          wrote on last edited by
                                          #127

                                          @actionmystique said in qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.:

                                          root is required to run /usr/bin/env

                                          I do not know what platform/variant of Linux you are on, but since when has running /usr/bin/env ever required root permission/user to run??

                                          I do no see any reason why being root may be the root ;-) cause for this issue.

                                          Xorg does not like a root user to run UI applications if you are logged into it as a non-root user. (I don't know whether xhost +... would permit this.) I imagine that is why @SGaist is asking.

                                          A 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