我重新安装了我的ubuntu 14.04和Qt 5.4.1以及Qtcreator。
Qt 5.4.1是使用“-opensource -nomake-test -nomake-example”配置选项从源代码构建的。
当我在QtCreator中打开一个旧项目并构建它时,一切正常。
但是当我运行这个项目时,它会显示:
此应用程序无法启动,因为它无法找到或加载Qt平台插件“xcb”。
可用的平台插件有:linuxfb,minimal,offscreen,xcb。
重新安装应用程序可能会解决此问题。 中止(核心倾销)
所以我搜索了这个问题并尝试了一切。 我安装了每个软件包(libxcb系列),但没有任何东西可以提供帮助!
请有人帮助我......
我试过你的方法。
当我在ldd
目录中运行platform
命令时,它显示:
你可以看到没有遗漏任何东西。实际上我在平台目录中创建了一个名为libqxcb.so的软链接。之前我的平台目录中没有libqxcb.so。
当我对我的可执行文件运行ldd
命令时。表明:
执行此文件时,您可以看到错误。
答案 0 :(得分:9)
对于类似的问题,在我的情况下,我解决了:
export QT_PLUGIN_PATH=<qt base path>/plugins
答案 1 :(得分:7)
尝试转到程序正在使用的Qt安装的platforms
文件夹,并在命令提示符下运行ldd libqxcb.so
。然后检查输出是否有任何缺少的依赖项。如果libqxcb.so
缺少其依赖项之一,则会生成您提到的输出。
您还可以在可执行文件上使用ldd
命令来检查是否存在无法找到的依赖项。
以下是ldd
输出中缺少依赖项的示例:
PS:this问题的接受答案也可能对您有所帮助(创建qt.conf文件)。
答案 2 :(得分:4)
我只是陷入一个非常相似的issue几个小时,在ldd
相关可执行文件或libqxcb.so的结果中也找不到任何内容。最后我发现它是可执行文件本身的问题,但不是Qt。尝试QT_QPA_PLATFORM='' executable
并且它有效:)
答案 3 :(得分:2)
'此应用程序无法启动,因为它无法找到或加载Qt平台插件“xcb”。'
请参阅随附的网页,向下滚动到“Qt插件”标题。见第一段。
libqxcb.so是必需的,即使您静态链接其余的。
http://doc.qt.io/qt-5/linux-deployment.html#application-dependencies
Qt可能已经编写了他们的源代码软件,以下列方式工作: 而不是允许libqxcb.so在启动时自动加载(使用rpath),他们使用dlopen()函数加载它,作为其QPA函数集的一部分,在main()开始后不久。
所以这完全无视我们静态包含所有“xcb”函数的尝试。
如果他们的dlopen()失败,他们只是小跑出我们都知道和讨厌的错误信息,然后调用信号6中止它(非常不必要)而不是正常退出。
答案 4 :(得分:1)
我在linux xubuntu 18.04上遇到了这个确切的错误
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.
Aborted (core dumped)
首先,在从命令行启动qtcreator之前定义此环境变量将导致打印更多调试信息:
export QT_DEBUG_PLUGINS=1
然后在调试中,尝试从xubuntu 18.04上的命令行启动qtcreator时说了这一点:
Cannot load library /home/myuser/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxkbcommon-x11.so.0: cannot open shared object file: No such file or directory)
请注意,它找不到libxkbcommon-x11,因此解决方法是这样:
sudo apt-get install libxkbcommon-x11-dev
export PATH=$PATH:~/Qt/Tools/QtCreator/bin
现在qtcreator启动。
答案 5 :(得分:0)
发出命令:sudo ./app-name -platform linuxfb
答案 6 :(得分:0)
export QT_PLUGIN_PATH=<your qt installation path>/plugins/platforms
&#13;
与mbjoe所说的相似,它确实有用!
答案 7 :(得分:0)
对于尚未找到解决方案并拼命寻找答案的任何人,这是@wardw对当前评价最高的答案的评论的副本,这有助于我解决潜在的问题。
export QT_DEBUG_PLUGINS=1
在运行项目之前将其放在您的运行配置或控制台中,它将打印出有关错误原因的更多信息。
答案 8 :(得分:0)
这可能很明显,但是从(无显示)SSH会话运行GUI时出现此错误[为什么?我正在开发一个更大的屏幕上的嵌入式应用程序,该屏幕紧邻打算用于的小触摸屏。
无论如何,在bash中,以下命令将应用定位到了自己的屏幕:
export DISPLAY=':0.0'
希望这对某人有帮助。
答案 9 :(得分:0)
就我而言,我使用的是 Ubuntu 20.04,这个错误阻止了我启动 QT Creator。我在终端中使用了以下命令:
export QT_DEBUG_PLUGINS=1
然后我再次从终端运行 QT Creator:
./qtcreator
然后我有更详细的错误日志:
<块引用>无法加载库 /home/linhdh/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0:无法打开共享对象文件:没有这样的文件或 目录) QLibraryPrivate::loadPlugin 失败 “/home/linhdh/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so” : "无法加载库 /home/linhdh/Qt/Tools/QtCreator/lib/Qt/plugins/platforms/libqxcb.so: (libxcb-xinerama.so.0:无法打开共享对象文件:没有这样的文件或 目录)” qt.qpa.plugin:无法加载 Qt 平台插件“xcb” 在“”中,即使它被找到了。此应用程序无法启动 因为无法初始化 Qt 平台插件。重新安装 应用程序可能会解决这个问题。
可用的平台插件有:eglfs、linuxfb、minimal、minimalegl、 离屏、vnc、xcb。
中止(核心转储)
所以我运行了以下命令:
sudo apt-get install libxcb-xinerama0
安装 libxcb-xinerama0 后,我可以正常运行 qtcreator。错误已修复。
答案 10 :(得分:0)
在 Debian 10 上安装 qtcreator 4.15.1 有类似问题。
显示导致该错误的库。
export QT_DEBUG_PLUGINS=1
运行
/opt/qtcreator-4.15.1/bin/qtcreator
搜索损坏的库
ldd /opt/qtcreator-4.15.1/lib/Qt/plugins/platforms/libqxcb.so
查找未正确链接的库。
修复
Download library dependency 并安装它会修复。
sudo apt install ./libxcb-util1_0.4.0-1+b1_amd64.deb