首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++ QT5.10 Raspberry 3交叉编译该应用程序无法启动,因为它无法在"“中找到或加载Qt平台插件"xcb”

C++ QT5.10 Raspberry 3交叉编译该应用程序无法启动,因为它无法在"“中找到或加载Qt平台插件"xcb”
EN

Stack Overflow用户
提问于 2017-12-27 09:24:12
回答 1查看 2.5K关注 0票数 2

我试图为Rasperry 3交叉编译qt5.10。

我使用了以下命令来执行此操作:

代码语言:javascript
复制
sudo ./configure -release -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-
gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- -sysroot ~/raspi/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -v -no-use-gold-linker

这样做是没有问题的。现在,我尝试运行这个示例qopenglwidget,但是我得到了以下错误消息:

sudo ./qopenglwidget 该应用程序无法启动,因为它无法在"“中找到或加载Qt >platform插件"xcb”。 可用的平台插件有: eglfs、linuxfb、最小、最小、屏幕外、>vnc、xcb。重新安装应用程序可能会解决此问题。 已中止

我在应用程序上尝试了ldd,并获得了以下输出:

代码语言:javascript
复制
ldd qopenglwidget
    linux-vdso.so.1 (0x7e9a4000)
    /usr/lib/arm-linux-gnueabihf/libarmmem.so (0x76f77000)
    libQt5Widgets.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Widgets.so.5 (0x76a11000)
    libQt5Gui.so.5 => /usr/lib/arm-linux-gnueabihf/libQt5Gui.so.5 (0x765eb000)
    libQt5Core.so.5 => /usr/local/qt5pi2/lib/libQt5Core.so.5 (0x760b9000)
    libGLESv2.so => /opt/vc/lib/libGLESv2.so (0x76094000)
    libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x7606b000)
    libstdc++.so.6 => /usr/lib/arm-linux-gnueabihf/libstdc++.so.6 (0x75f23000)
    libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x75ea4000)
    libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x75e77000)
    libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x75d38000)
    /lib/ld-linux-armhf.so.3 (0x76f8d000)
    libharfbuzz.so.0 => /usr/lib/arm-linux-gnueabihf/libharfbuzz.so.0 (0x75ca1000)
    libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x75c7a000)
    libpng16.so.16 => /usr/lib/arm-linux-gnueabihf/libpng16.so.16 (0x75c40000)
    libdouble-conversion.so.1 => /usr/lib/arm-linux-gnueabihf/libdouble-conversion.so.1 (0x75c1e000)
    libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x75c0b000)
    libgthread-2.0.so.0 => /usr/lib/arm-linux-gnueabihf/libgthread-2.0.so.0 (0x75bf9000)
    libglib-2.0.so.0 => /lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0x75af1000)
    libEGL.so => /opt/vc/lib/libEGL.so (0x75ab8000)
    libbcm_host.so => /opt/vc/lib/libbcm_host.so (0x75a91000)
    libvchiq_arm.so => /opt/vc/lib/libvchiq_arm.so (0x75a7b000)
    libvcos.so => /opt/vc/lib/libvcos.so (0x75a61000)
    librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x75a4a000)
    libfreetype.so.6 => /usr/lib/arm-linux-gnueabihf/libfreetype.so.6 (0x759af000)
    libgraphite2.so.3 => /usr/lib/arm-linux-gnueabihf/libgraphite2.so.3 (0x7597c000)
    libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x75903000)

我尝试将LDD_LIBRARY_PATH设置为/usr/local/qt5pi2/平台,但它不起作用。

有人知道我做错了什么吗?

添加QT_QPA_PLATFORM_PLUGIN_PATH后,将得到以下错误:

./qopenglwidget这个应用程序无法启动,因为它无法在“/usr/local/qt5pi/plugins/platform/”中找到或加载Qt >platform插件"xcb“。 可用的平台插件有: eglfs (来自>/usr/local/qt5pi/ plugins / platform /)、linuxfb (来自>/usr/local/qt5pi/plugins/platform/)、最小插件(来自>/usr/local/qt5pi/plugins/platform/)、极小值插件(来自>/usr/local/qt5pi/plugins/平台/)、屏幕外(来自>/usr/local/qt5pi/plut5pi/plugins/平台/)、vnc (来自>/usr/local/plut5pi/vnc/平台/)、xcb (来自>/usr/local/qt5pi/plugins/plugins/平台)、最小值、最小值。>屏幕外,vnc。 重新安装应用程序可能会解决此问题。已中止

在p-a-o-l-o的帮助下(非常感谢),我已经出口了

代码语言:javascript
复制
QT_QPA_PLATFORM_PLUGIN_PATH 

在此之后,我做了以下工作:

代码语言:javascript
复制
export LD_LIBRARY_PATH=/usr/local/qt5pi/lib
sudo ldconfig

现在它对我有用了。

我将尝试交叉编译raspberry pi的qt5.10,重要的是从一个空白系统(Raspbian拉伸)开始,并且只做上面指南中的事情。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-27 09:29:25

我认为插件的路径是空的,请尝试用

代码语言:javascript
复制
export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/plugins/platforms

在启动应用程序之前(不过,我提供的路径只是一个例子)。

如果这不能解决问题,则无法加载xcb插件(它可能是目标设备上的x服务器问题)。在启动前尝试加载一个导出QT_QPA_PLATFORM的不同插件,例如:

代码语言:javascript
复制
export QT_QPA_PLATFORM=eglfs

代码语言:javascript
复制
export QT_QPA_PLATFORM=minimalegl
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47989503

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档