首先之所以QtCreator环境下可直接运行,但是在终端下 ./ 则不能运行(黑屏但是不报错),判断肯定不是程序或者是库的问题。于是猜想是环境问题,即终端环境与QtCreator环境不同。
然后就查看NanoPi手册上说明的Qt程序的运行,上面说
运行Qt程序时,需要指定platform参数为xcb,如下所示:
./HelloQt --platform xcb
由此提示后,就好解决了,于是跑到QtCreator下打开左侧的Projects界面,找到run设置(因为不是building出问题了),查找环境变量(Run Environment),有一个QT_QPA_PLATFORM
=xcb选项,于是接着查找资料,百度搜Qt RunEnvironment QT_QPA_PLATFORM;找到网页 https://stackoverflow.com/questions/37788111/meta-qt-yocto-layer-change-default-qt-platform-qt-qpa-platform ;按上面说明:打开/etc/profile
文件,追加 export QT_QPA_PLATFORM=
xcb ,然后重启。再运行程序即可。