Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

QtCreator could not load platform plugin xcb



  • Hi,
    I've installed QtCreator and Qt 5.15.2 (tried 5.15.1 as well as 6.0.0) on my Debian buster desktop, using the unified online installer from:

    http://download.qt.io/official_releases/online_installers/

    I can't start QtCreator which aborts with the following message:

    stefano@debian:~/Qt/Tools/QtCreator/bin$ ./qtcreator
    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.
    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.

    I've seen others having problems with xcb, I've read some of the threads about the issue and eventually attempted to install missing dependencies related to libqxcb.so but result is the same.

    Is this a know issues with the latest Qt releases? Is there a known fix that I'm missing?

    Cheers,
    Ste


  • Lifetime Qt Champion

    Hi,

    What exactly did you install ?
    What output do you get now from ldd ?



  • Hi SGaist,
    using the qt-unified-linux-x64-online.run I've installed QtCreator 4.13.3 and Qt 5.15.2 at first, the I tried QtCreator 4.14.0-rc1 and Qt 6.0.0

    Output of ldd is

    ldd libqxcb.so
    linux-vdso.so.1 (0x00007ffd29b5c000)
    libQt6XcbQpa.so.6 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libQt6XcbQpa.so.6 (0x00007f48b29c1000)
    libxkbcommon-x11.so.0 => /usr/lib/x86_64-linux-gnu/libxkbcommon-x11.so.0 (0x00007f48b299c000)
    libxkbcommon.so.0 => /usr/lib/x86_64-linux-gnu/libxkbcommon.so.0 (0x00007f48b295a000)
    libxcb-icccm.so.4 => /usr/lib/x86_64-linux-gnu/libxcb-icccm.so.4 (0x00007f48b2953000)
    libxcb-image.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-image.so.0 (0x00007f48b274e000)
    libxcb-keysyms.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-keysyms.so.1 (0x00007f48b254b000)
    libxcb-randr.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-randr.so.0 (0x00007f48b2537000)
    libxcb-render-util.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render-util.so.0 (0x00007f48b2333000)
    libxcb-shm.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 (0x00007f48b232e000)
    libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007f48b2324000)
    libxcb-xfixes.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-xfixes.so.0 (0x00007f48b231a000)
    libxcb-render.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 (0x00007f48b230b000)
    libxcb-shape.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-shape.so.0 (0x00007f48b2304000)
    libxcb-xkb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-xkb.so.1 (0x00007f48b22e6000)
    libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007f48b22bc000)
    libQt6OpenGL.so.6 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libQt6OpenGL.so.6 (0x00007f48b201d000)
    libQt6Gui.so.6 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libQt6Gui.so.6 (0x00007f48b153d000)
    libGLX.so.0 => /usr/lib/x86_64-linux-gnu/libGLX.so.0 (0x00007f48b1509000)
    libOpenGL.so.0 => /usr/lib/x86_64-linux-gnu/libOpenGL.so.0 (0x00007f48b14d6000)
    libQt6Core.so.6 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libQt6Core.so.6 (0x00007f48b0c88000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f48b0c67000)
    libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007f48b0c62000)
    libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007f48b0b21000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f48b0b1c000)
    libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f48b0996000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f48b0813000)
    libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f48b07f9000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f48b0638000)
    libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f48b0519000)
    libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007f48b0514000)
    libxcb-util.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-util.so.0 (0x00007f48b030b000)
    libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007f48b0107000)
    libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007f48aff01000)
    libEGL.so.1 => /usr/lib/x86_64-linux-gnu/libEGL.so.1 (0x00007f48afeec000)
    libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007f48afea6000)
    libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f48afc86000)
    libQt6DBus.so.6 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libQt6DBus.so.6 (0x00007f48af9bb000)
    libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007f48af8ff000)
    libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007f48af6ed000)
    libGLdispatch.so.0 => /usr/lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f48af630000)
    libicui18n.so.56 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libicui18n.so.56 (0x00007f48af195000)
    libicuuc.so.56 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libicuuc.so.56 (0x00007f48aeddd000)
    libicudata.so.56 => /home/stefano/Qt/6.0.0/gcc_64/plugins/platforms/./../../lib/libicudata.so.56 (0x00007f48ad3fa000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f48ad3f0000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f48b2e6f000)
    libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f48ad37c000)
    libbsd.so.0 => /usr/lib/x86_64-linux-gnu/libbsd.so.0 (0x00007f48ad360000)
    libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f48ad323000)
    libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f48ad31a000)
    libdbus-1.so.3 => /lib/x86_64-linux-gnu/libdbus-1.so.3 (0x00007f48ad2c7000)
    libpng16.so.16 => /usr/lib/x86_64-linux-gnu/libpng16.so.16 (0x00007f48ad28e000)
    libsystemd.so.0 => /lib/x86_64-linux-gnu/libsystemd.so.0 (0x00007f48ad1eb000)
    liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f48ad1c3000)
    liblz4.so.1 => /usr/lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f48ad1a4000)
    libgcrypt.so.20 => /lib/x86_64-linux-gnu/libgcrypt.so.20 (0x00007f48ad086000)
    libgpg-error.so.0 => /lib/x86_64-linux-gnu/libgpg-error.so.0 (0x00007f48ad063000)


  • Lifetime Qt Champion

    @cooked Set QT_DEBUG_PLUGINS environment variable before starting your app, start your app and check the output in the terminal.



  • @jsulm see below the output. QtCreator uses it's own libxcb.so and that one links to libcxb-util.so.1 which does not exist on Debian (only .so.0).

    stefano@debian:~/Qt/Tools/QtCreator/bin$ ./qtcreator
    QFactoryLoader::QFactoryLoader() checking directory path "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms" ...
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqeglfs.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqeglfs.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "eglfs"
    ]
    },
    "archreq": 0,
    "className": "QEglFSIntegrationPlugin",
    "debug": false,
    "version": 331520
    }

    Got keys from plugin meta data ("eglfs")
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqlinuxfb.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqlinuxfb.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "linuxfb"
    ]
    },
    "archreq": 0,
    "className": "QLinuxFbIntegrationPlugin",
    "debug": false,
    "version": 331520
    }

    Got keys from plugin meta data ("linuxfb")
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqminimal.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqminimal.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "minimal"
    ]
    },
    "archreq": 0,
    "className": "QMinimalIntegrationPlugin",
    "debug": false,
    "version": 331520
    }

    Got keys from plugin meta data ("minimal")
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqminimalegl.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqminimalegl.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "minimalegl"
    ]
    },
    "archreq": 0,
    "className": "QMinimalEglIntegrationPlugin",
    "debug": false,
    "version": 331520
    }

    Got keys from plugin meta data ("minimalegl")
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqoffscreen.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqoffscreen.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "offscreen"
    ]
    },
    "archreq": 0,
    "className": "QOffscreenIntegrationPlugin",
    "debug": false,
    "version": 331520
    }

    Got keys from plugin meta data ("offscreen")
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqvnc.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqvnc.so, metadata=
    {
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
    "Keys": [
    "vnc"
    ]
    },
    "archreq": 0,
    "className": "QVncIntegrationPlugin",
    "debug": false,
    "version": 331520
    }

    Got keys from plugin meta data ("vnc")
    QFactoryLoader::QFactoryLoader() looking at "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so"
    Found metadata in lib /home/stefano/Qt/Tools/QtCreator/lib/Qt/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 "/home/stefano/Qt/Tools/QtCreator/bin/platforms" ...
    Cannot load library /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxcb-util.so.1: cannot open shared object file: No such file or directory)
    QLibraryPrivate::loadPlugin failed on "/home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so" : "Cannot load library /home/stefano/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxcb-util.so.1: cannot open shared object file: No such file or directory)"
    qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
    This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

    Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb.


  • Lifetime Qt Champion

    @cooked said in QtCreator could not load platform plugin xcb:

    libcxb-util.so.1 which does not exist on Debian (only .so.0)

    You can create a symbolic link libcxb-util.so.1 --> libcxb-util.so.0 to fix the issue



  • The symbolic linked fixed the issue. Now QtCReator works as expected.
    Is worth nothing to say the solution feels more like a hack/temporary fix (as also pointed out in similar threads regarding xcb).
    should I open an issue?

    thank you for the very quick and effective support.

    cheers
    stef


  • Lifetime Qt Champion

    @cooked said in QtCreator could not load platform plugin xcb:

    should I open an issue?

    I don't think it will change anything. As far as I know Qt Company builds Qt and tools on RedHat Linux, if some other Linux distributions name same libs differently it can't be covered with one build.


  • Lifetime Qt Champion

    Hi,

    @jsulm said in QtCreator could not load platform plugin xcb:

    @cooked said in QtCreator could not load platform plugin xcb:

    should I open an issue?

    I don't think it will change anything. As far as I know Qt Company builds Qt and tools on RedHat Linux, if some other Linux distributions name same libs differently it can't be covered with one build.

    Technically speaking, it's the same library, it's just a more recent version that is used at build time. However, I do wonder why Qt Creator would use a Qt version that is build in a different manner that the one provided with the pre-built Qt binaries. While the Qt version used to build Qt Creator has no influence on the one you use to build your application, I think it would make sense that it should also run on a distribution that is as recent as Debian 10 even if Debian is known to be very conservative with regard to library versions.



  • Hi,

    Are you running on x11 display?can you give clarification are you building using yocto ?
    did you installed below mentioned packages

    IMAGE_INSTALL_append = " xcb-util libxcb xcb-util-image xcb-util-renderutil xcb-util-wm xcb-util-keysyms"

    PACKAGECONFIG_GL = "gles2"
    PACKAGECONFIG_append = " sql-sqlite"

    my case working fine. I connected display I run qtcreator there.


  • Lifetime Qt Champion

    @cooked said in QtCreator could not load platform plugin xcb:

    The symbolic linked fixed the issue. Now QtCReator works as expected.
    Is worth nothing to say the solution feels more like a hack/temporary fix (as also pointed out in similar threads regarding xcb).
    should I open an issue?

    No need to, the issue is well known: QTBUG-88688

    Regards


Log in to reply