我一直在尝试使用Qt5在Raspbian Stretch上创建图形用户界面应用程序,但除非我特别指定它作为XCB运行,否则该应用程序无法正确启动。这很好,因为我不需要它在EGLFS模式下运行,所以我返回并配置了不支持EGLFS的Qt5,但它仍然做同样的事情。
配置:
/qt-everywhere-src-5.10.1/configure -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=arm-linux-gnueabihf- -sysroot /home/bast/cross-compile-rpi/sysroot -prefix /usr/local/qt5pi -opensource -confirm-license -skip qtwebengine -skip qtscript -nomake examples -make libs -no-icu -xcb -no-eglfs -nomake tests -nomake examples -v当我运行make和make install,然后将文件rsync到我的Pi时,它仍然默认为EGLFS模式,并且应用程序冻结并显示以下输出:
[9;0]Unable to query physical screen size, defaulting to 100 dpi.
To override, set QT_QPA_EGLFS_PHYSICAL_WIDTH and QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimeters).如果我以XCB的身份运行它,那么一切都运行得很好,而且我需要应用程序与其他窗口一起运行,它并不意味着作为Pi的主窗口运行。
发布于 2018-04-08 05:24:07
用-no-opengl替换-opengl es2选项,然后重试
发布于 2018-06-19 10:53:45
也许你需要在你的树莓派上设置环境
export QT_QPA_PLATFORM=xcbhttps://stackoverflow.com/questions/49533933
复制相似问题