当我们给RDK X3烧写Desktop版本镜像,写了一个带有imshow的OpenCV程序,使用ssh远程开发时运行这个程序,本以为我们的图片窗口会乖乖的展示在HDMI的显示器上,但是遇到了报错:
bash
qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/local/lib/python3.8/dist-packages/cv2/qt/plugins" 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: xcb.
Aborted
这时候需要作如下设置:
step1:ssh登陆到X3
RDK X3系统镜像有两个用户:一个sunrise,一个root。
而桌面环境登录的用户是sunrise,所以ssh登录也登录到sunrise
step2:设置允许别的用户启动窗体程序
bash
xhost +
step3:设置窗口程序要输出的显示器:
export DISPLAY=:0.0
这时候我们再去ssh终端中运行一个带有imshow的OpenCV程序,就可以成功运行了,窗口会显示在xfce桌面上,可以通过VNC去看。