Ubuntu
一個使用者帳戶中的“無法連接以顯示”
我有一個用 Qt 編寫的 GUI 應用程序,我想通過 ssh(或 Jenkins)執行測試。只有一個使用者帳戶,允許在顯示模式下執行它(當我以前這樣做時是 ofc
export $DISPLAY=:0
。在其他使用者詹金斯身上,我在控制台中看到一個錯誤:QXcbConnection: Could not connect to display :0 Aborted (core dumped)
我應該怎麼做才能讓這個使用者以圖形模式執行應用程序?我使用 Ubuntu 14.04。
X11vnc
可能是你想要的。它將允許您使用 vnc 共享整個桌面。或者更多控制:允許 X11 將單個視窗放在顯示屏上,也放在本地顯示屏上,然後用於
xauth
配置安全性。Notexhost
也可以用來做同樣的事情xauth
,但它非常不安全,它將允許您網路上的任何機器訪問您的桌面,並控制您的應用程序(即使您使用基於主機的身份驗證)。
我通過設置 X 虛擬幀緩衝區在無頭持續集成伺服器上使用 QTestLib 執行我的 GUI 應用程序的單元測試。
Xvfb :1 & PID=$! DISPLAY=:1 make check kill $PID