![在启动时运行 python 脚本时出现“qt.qpa.screen:无法连接到显示”错误](https://linux22.com/image/163474/%E5%9C%A8%E5%90%AF%E5%8A%A8%E6%97%B6%E8%BF%90%E8%A1%8C%20python%20%E8%84%9A%E6%9C%AC%E6%97%B6%E5%87%BA%E7%8E%B0%E2%80%9Cqt.qpa.screen%EF%BC%9A%E6%97%A0%E6%B3%95%E8%BF%9E%E6%8E%A5%E5%88%B0%E6%98%BE%E7%A4%BA%E2%80%9D%E9%94%99%E8%AF%AF.png)
我在网上搜索过这个问题但无法解决。请原谅我的经验不足。我正在尝试在启动时运行一个 python 脚本,它使用 PyQt5 库创建一个窗口。我使用的是 raspberry pi 3 model b+,以及带有 lxde 的 raspbian buster。我写了一个shell脚本如下:
#! /bin/bash
sleep 10
python3 /home/pi/Desktop/workfolder/mainwindow.py
然后我将其添加到 crontab 中。
@reboot /home/pi/Desktop/workfolder/startup.sh > /home/pi/Documents/error.log 2>&1
当我重新启动时,错误日志给出以下错误。
qt.qpa.screen: QXcbConnection: Could not connect to display
Could not connect to any X display.
我还有其他一些问题可以解决,但我被困在这个问题上。当我通过终端运行脚本时,我的屏幕会启动。据我所知,Xorg是在lxde运行时安装的。我还将 sleep 10 更改为 sleep 30,以确保脚本是否运行得太早。但仍然给出同样的错误。
答案1
超时并不是最大的问题。
用于DISPLAY=:0
指定窗口的显示位置:
@reboot DISPLAY=:0 /home/pi/Desktop/workfolder/startup.sh > /home/pi/Documents/error.log 2>&1