我已經編寫了一個程序,它在登錄後在終端中以ROOT權限運行,但在重新啓動後進行XOpenDisplay(NULL)調用時失敗。該程序通過rc.local啓動,但似乎無法看到X11。UBUNTU:XOpenDisplay(NULL)在啓動序列中通過rc.local運行時失敗
我需要ROOT,因爲我使用LibUSB調用,並且如果不是ROOT,則會失敗。我可以看到程序正在ROOT權限下運行,但環境變量的檢查顯示DISPLAY沒有設置。我有一個延遲循環運行,並且在用戶登錄後進行檢查,用戶可以看到在環境變量中設置了DISPLAY,但程序不能。如果程序終止並在終端中運行,那麼它的工作原理是完美的,所以問題在於程序在啓動時無法與X11交互,並且此狀態依然存在。
我希望程序在沒有用戶登錄的情況下啓動並運行。
任何人都可以讓我知道我需要做什麼嗎?
大衛
祝賀修復!如果可以,請確保將答案標記爲「已接受」,以便其他人可以從您的解決方案中學習。乾杯〜 –