I'm programming a software in C++ with Qt5.15.2. I need to deploy it on a Raspberry Pi 4 and installed Qt Creator and Qt5.15.2 on the Raspberry (I know I can also do a cross-compile but I keep it for later). When I try to run the the software from QtCreator I get the error :
qt.qpa.plugin: Could not find the Qt platform plugin "xcb" in ""
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, webgl.
I googled this error and found threads about how to solve it, especially running the software from the terminal with QT_DEBUG_PLUGINS=1
What I didn't find however is a clear explanation of why this is happening. My questions are the following :
- Why do I get an error ?
- What is the xcb plugin ?
- Did I do something wrong while installing Qt ? If so what did I do wrong ?
- Why is it working with a call to
QT_DEBUG_PLUGINS=1;? - If I deploy my software like this and use a script to call
QT_DEBUG_PLUGINS=1; ./mySoftwareExecis it an okay or an awful solution ?
I'm really confused about this, this is not clear for me.
This is the output I have when running QT_DEBUG_PLUGINS=1before (which I don't understand) :
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/platforms" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/platforms/libqeglfs.so"
Found metadata in lib /usr/lib/qt5.15.2/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 "/usr/lib/qt5.15.2/plugins/platforms/libqlinuxfb.so"
Found metadata in lib /usr/lib/qt5.15.2/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 "/usr/lib/qt5.15.2/plugins/platforms/libqminimal.so"
Found metadata in lib /usr/lib/qt5.15.2/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 "/usr/lib/qt5.15.2/plugins/platforms/libqminimalegl.so"
Found metadata in lib /usr/lib/qt5.15.2/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 "/usr/lib/qt5.15.2/plugins/platforms/libqoffscreen.so"
Found metadata in lib /usr/lib/qt5.15.2/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 "/usr/lib/qt5.15.2/plugins/platforms/libqvnc.so"
Found metadata in lib /usr/lib/qt5.15.2/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 "/usr/lib/qt5.15.2/plugins/platforms/libqwebgl.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/platforms/libqwebgl.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3",
"MetaData": {
"Keys": [
"webgl"
]
},
"archreq": 0,
"className": "QWebGLIntegrationPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("webgl")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/platforms/libqxcb.so"
Found metadata in lib /usr/lib/qt5.15.2/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/pi/eva/eva-core/bin/unix/debug/platforms" ...
loaded library "/usr/lib/qt5.15.2/plugins/platforms/libqxcb.so"
loaded library "Xcursor"
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/platformthemes" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/platformthemes/libqxdgdesktopportal.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/platformthemes/libqxdgdesktopportal.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.QPlatformThemeFactoryInterface.5.1",
"MetaData": {
"Keys": [
"xdgdesktopportal",
"flatpak",
"snap"
]
},
"archreq": 0,
"className": "QXdgDesktopPortalThemePlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("xdgdesktopportal", "flatpak", "snap")
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/platformthemes" ...
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/platforminputcontexts" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so, metadata=
{
"IID": "org.qt-project.Qt.QPlatformInputContextFactoryInterface.5.1",
"MetaData": {
"Keys": [
"compose",
"xim"
]
},
"archreq": 0,
"className": "QComposePlatformInputContextPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("compose", "xim")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/platforminputcontexts/libibusplatforminputcontextplugin.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/platforminputcontexts/libibusplatforminputcontextplugin.so, metadata=
{
"IID": "org.qt-project.Qt.QPlatformInputContextFactoryInterface.5.1",
"MetaData": {
"Keys": [
"ibus"
]
},
"archreq": 0,
"className": "QIbusPlatformInputContextPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("ibus")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/platforminputcontexts/libqtvirtualkeyboardplugin.so, metadata=
{
"IID": "org.qt-project.Qt.QPlatformInputContextFactoryInterface.5.1",
"MetaData": {
"Keys": [
"qtvirtualkeyboard"
]
},
"archreq": 0,
"className": "QVirtualKeyboardPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("qtvirtualkeyboard")
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/platforminputcontexts" ...
loaded library "/usr/lib/qt5.15.2/plugins/platforminputcontexts/libcomposeplatforminputcontextplugin.so"
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/styles" ...
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/styles" ...
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/imageformats" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqgif.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqgif.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"gif"
],
"MimeTypes": [
"image/gif"
]
},
"archreq": 0,
"className": "QGifPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("gif")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqicns.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqicns.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"icns"
],
"MimeTypes": [
"image/x-icns"
]
},
"archreq": 0,
"className": "QICNSPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("icns")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqico.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqico.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"ico",
"cur"
],
"MimeTypes": [
"image/vnd.microsoft.icon",
"image/vnd.microsoft.icon"
]
},
"archreq": 0,
"className": "QICOPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("ico", "cur")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqjpeg.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqjpeg.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"jpg",
"jpeg"
],
"MimeTypes": [
"image/jpeg",
"image/jpeg"
]
},
"archreq": 0,
"className": "QJpegPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("jpg", "jpeg")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqpdf.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqpdf.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"pdf"
],
"MimeTypes": [
"application/pdf"
]
},
"archreq": 0,
"className": "QPdfPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("pdf")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqsvg.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqsvg.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"svg",
"svgz"
],
"MimeTypes": [
"image/svg+xml",
"image/svg+xml-compressed"
]
},
"archreq": 0,
"className": "QSvgPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("svg", "svgz")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqtga.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqtga.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"tga"
],
"MimeTypes": [
"image/x-tga"
]
},
"archreq": 0,
"className": "QTgaPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("tga")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqtiff.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqtiff.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"tiff",
"tif"
],
"MimeTypes": [
"image/tiff",
"image/tiff"
]
},
"archreq": 0,
"className": "QTiffPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("tiff", "tif")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqwbmp.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqwbmp.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"wbmp"
],
"MimeTypes": [
"image/vnd.wap.wbmp"
]
},
"archreq": 0,
"className": "QWbmpPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("wbmp")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/imageformats/libqwebp.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/imageformats/libqwebp.so, metadata=
{
"IID": "org.qt-project.Qt.QImageIOHandlerFactoryInterface",
"MetaData": {
"Keys": [
"webp"
],
"MimeTypes": [
"image/webp"
]
},
"archreq": 0,
"className": "QWebpPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("webp")
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/imageformats" ...
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqgif.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqicns.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqico.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqjpeg.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqpdf.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqsvg.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqtga.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqtiff.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqwbmp.so"
loaded library "/usr/lib/qt5.15.2/plugins/imageformats/libqwebp.so"
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/iconengines" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/iconengines/libqsvgicon.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/iconengines/libqsvgicon.so, metadata=
{
"IID": "org.qt-project.Qt.QIconEngineFactoryInterface",
"MetaData": {
"Keys": [
"svg",
"svgz",
"svg.gz"
]
},
"archreq": 0,
"className": "QSvgIconPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("svg", "svgz", "svg.gz")
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/iconengines" ...
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/accessible" ...
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/accessible" ...
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/xcbglintegrations" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/xcbglintegrations/libqxcb-glx-integration.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/xcbglintegrations/libqxcb-glx-integration.so, metadata=
{
"IID": "org.qt-project.Qt.QPA.Xcb.QXcbGlIntegrationFactoryInterface.5.5",
"MetaData": {
"Keys": [
"xcb_glx"
]
},
"archreq": 0,
"className": "QXcbGlxIntegrationPlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("xcb_glx")
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/xcbglintegrations" ...
loaded library "/usr/lib/qt5.15.2/plugins/xcbglintegrations/libqxcb-glx-integration.so"
QFactoryLoader::QFactoryLoader() checking directory path "/usr/lib/qt5.15.2/plugins/bearer" ...
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/bearer/libqconnmanbearer.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/bearer/libqconnmanbearer.so, metadata=
{
"IID": "org.qt-project.Qt.QBearerEngineFactoryInterface",
"MetaData": {
"Keys": [
"connman"
]
},
"archreq": 0,
"className": "QConnmanEnginePlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("connman")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/bearer/libqgenericbearer.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/bearer/libqgenericbearer.so, metadata=
{
"IID": "org.qt-project.Qt.QBearerEngineFactoryInterface",
"MetaData": {
"Keys": [
"generic"
]
},
"archreq": 0,
"className": "QGenericEnginePlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("generic")
QFactoryLoader::QFactoryLoader() looking at "/usr/lib/qt5.15.2/plugins/bearer/libqnmbearer.so"
Found metadata in lib /usr/lib/qt5.15.2/plugins/bearer/libqnmbearer.so, metadata=
{
"IID": "org.qt-project.Qt.QBearerEngineFactoryInterface",
"MetaData": {
"Keys": [
"networkmanager"
]
},
"archreq": 0,
"className": "QNetworkManagerEnginePlugin",
"debug": false,
"version": 331520
}
Got keys from plugin meta data ("networkmanager")
QFactoryLoader::QFactoryLoader() checking directory path "/home/pi/eva/eva-core/bin/unix/debug/bearer" ...
loaded library "/usr/lib/qt5.15.2/plugins/bearer/libqconnmanbearer.so"
loaded library "/usr/lib/qt5.15.2/plugins/bearer/libqgenericbearer.so"
loaded library "/usr/lib/qt5.15.2/plugins/bearer/libqnmbearer.so"
Thanks in advance