この問題をオンラインで検索しましたが、解決できませんでした。私の未熟さを許してください。 PyQt5ライブラリを使用してウィンドウを作成するときにPythonスクリプトを実行しようとしています。私はラズベリーパイ3モデルb +を使用しており、ラズベリーパイ3モデルをlxdeと一緒に使用しています。次のようにシェルスクリプトを作成しました。
#! /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が実行されたときにインストールされます。また、スクリプトが早すぎるかどうかを確認するために、スリープ10をスリープ30に変更しました。しかし、まだ同じエラーが発生します。
答え1
タイムアウトは最大の問題ではありません。
DISPLAY=:0
ウィンドウの表示位置を指定するために使用されます。
@reboot DISPLAY=:0 /home/pi/Desktop/workfolder/startup.sh > /home/pi/Documents/error.log 2>&1