ログイン後にターミナルでROOT権限で実行されるプログラムを作成しましたが、再起動後にXOpenDisplay(NULL)呼び出しが行われると失敗します。プログラムはrc.localを介して起動されますが、X11を表示できないようです。
LibUSB呼び出しを行うため、ROOTが必要ですが、ROOTでない場合、これらは失敗します。プログラムがROOT権限で実行されていることはわかりますが、環境変数を調べると、DISPLAYが設定されていないことがわかります。遅延ループを実行していて、ユーザーのログイン後にチェックが行われ、ユーザーは環境変数に設定されたDISPLAYを表示できますが、プログラムは表示できません。プログラムが終了してターミナルで実行される場合、プログラムは完全に機能するため、プログラムが開始されたときにプログラムがX11と対話できず、この状態が続くという問題があります。
ユーザーログインなしでプログラムを起動して実行したい。
誰かが私に何をする必要があるか教えてもらえますか?
デビッド