College Kid
College Kid

Reputation: 63

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

When I run the R command, I get the following error:

qt.qpa.xcb: could not connect to display 
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, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb.

Aborted (core dumped)

I have looked at all the other responses, and "solved" questions to this issue, but they don't fix the problem for me and I don't know how to solve this issue on my own for my specific device.

Can someone please walk me through how to fix this without using complicated language? I don't know any of the commands to access things, so it makes trying to use online answers very difficult.

Here is my system information, running on a Pixelbook

enter image description here

This is the full output when I run rstudio:

QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/rstudio/plugins/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/rstudio/plugins/platforms/libqeglfs.so"
Found metadata in lib /usr/lib/rstudio/plugins/platforms/libqeglfs.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "eglfs"
        ]
    },
    "archreq": 0,
    "className": "QEglFSIntegrationPlugin",
    "debug": false,
    "version": 330752
}


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


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


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


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


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


Got keys from plugin meta data ("vnc")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/rstudio/plugins/platforms/libqwayland-egl.so"
Found metadata in lib /usr/lib/rstudio/plugins/platforms/libqwayland-egl.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "wayland-egl"
        ]
    },
    "archreq": 0,
    "className": "QWaylandEglPlatformIntegrationPlugin",
    "debug": false,
    "version": 330752
}


Got keys from plugin meta data ("wayland-egl")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/rstudio/plugins/platforms/libqwayland-generic.so"
Found metadata in lib /usr/lib/rstudio/plugins/platforms/libqwayland-generic.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "wayland"
        ]
    },
    "archreq": 0,
    "className": "QWaylandIntegrationPlugin",
    "debug": false,
    "version": 330752
}


Got keys from plugin meta data ("wayland")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/rstudio/plugins/platforms/libqwayland-xcomposite-egl.so"
Found metadata in lib /usr/lib/rstudio/plugins/platforms/libqwayland-xcomposite-egl.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "wayland-xcomposite-egl"
        ]
    },
    "archreq": 0,
    "className": "QWaylandXCompositeEglPlatformIntegrationPlugin",
    "debug": false,
    "version": 330752
}


Got keys from plugin meta data ("wayland-xcomposite-egl")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/rstudio/plugins/platforms/libqwayland-xcomposite-glx.so"
Found metadata in lib /usr/lib/rstudio/plugins/platforms/libqwayland-xcomposite-glx.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "wayland-xcomposite-glx"
        ]
    },
    "archreq": 0,
    "className": "QWaylandXCompositeGlxPlatformIntegrationPlugin",
    "debug": false,
    "version": 330752
}


Got keys from plugin meta data ("wayland-xcomposite-glx")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/rstudio/plugins/platforms/libqxcb.so"
Found metadata in lib /usr/lib/rstudio/plugins/platforms/libqxcb.so, metadata=
{
    "IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
    "MetaData": {
        "Keys": [
            "xcb"
        ]
    },
    "archreq": 0,
    "className": "QXcbIntegrationPlugin",
    "debug": false,
    "version": 330752
}


Got keys from plugin meta data ("xcb")
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/rstudio/bin/platforms" ...
loaded library "/usr/lib/rstudio/plugins/platforms/libqxcb.so"
qt.qpa.xcb: could not connect to display 
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, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb.

Aborted (core dumped)

Can anyone maybe tell me the command I need to use to reinstall the plugin? I haven't seen anyone post that anywhere.

Upvotes: 5

Views: 4558

Answers (2)

Yann Dirson
Yann Dirson

Reputation: 139

What library is missing may vary, but finding which one(s) can be done without relying on guesswork.

First, let's note that this kind of problem happens when using pre-built Qt packages that do not come with your distribution (which will usually get that kind of dependencies right). This can happen for example when installing Qt for python with pip (e.g. pip install PySide6), since that package does come with its own copy of the libs.

Find out where the xcb platform plugin is located:

$ find env/lib/python3.9/site-packages/PySide6 -name "*xcb*"
env/lib/python3.9/site-packages/PySide6/Qt/metatypes/qt6xcbqpaprivate_relwithdebinfo_metatypes.json
env/lib/python3.9/site-packages/PySide6/Qt/plugins/xcbglintegrations
env/lib/python3.9/site-packages/PySide6/Qt/plugins/xcbglintegrations/libqxcb-glx-integration.so
env/lib/python3.9/site-packages/PySide6/Qt/plugins/xcbglintegrations/libqxcb-egl-integration.so
env/lib/python3.9/site-packages/PySide6/Qt/plugins/platforms/libqxcb.so

The last line does look like a "platform plugin", and we can look at what libraries it is missing:

$ ldd env/lib/python3.9/site-packages/PySide6/Qt/plugins/platforms/libqxcb.so |grep "not found"
        libxcb-cursor.so.0 => not found
        libxcb-cursor.so.0 => not found

So we have the library name(s), and we can easily install the matching package(s) (libxcb-cursor0 on Debian-based distros).

Upvotes: 1

Bill McGonigle
Bill McGonigle

Reputation: 225

sudo apt install libxcb-util1

fixed this error for me.

To see what symbols are missing run your app prepended with QT_DEBUG_PLUGINS=1 .

Upvotes: 2

Related Questions