web-dev-qa-db-ja.com

1つのユーザーアカウントで「ディスプレイに接続できませんでした」

Qtで書かれたGUIアプリケーションがあり、ssh(またはJenkins)でテストを実行したいと思っていました。ユーザーアカウントは1つだけで、表示モードで実行できます(以前にexport $DISPLAY=:0。他のユーザーjenkinsでは、コンソールでエラーが発生しました。

QXcbConnection: Could not connect to display :0 
Aborted (core dumped)

このユーザーがアプリケーションをグラフィカルモードで実行できるようにするにはどうすればよいですか?私はUbuntu 14.04を使用しています。

5
trivelt

X11vncはあなたが望むものかもしれません。 vncを使用してデスクトップ全体を共有できます。

または、より詳細に制御するために、X11が個々のウィンドウをディスプレイおよびローカルディスプレイに配置できるようにするには、xauthを使用してセキュリティを構成します。注xhostを使用してxauthと同じことを行うこともできますが、これは非常に安全ではありません。ネットワーク上のすべてのマシンがデスクトップにアクセスし、アプリケーションを制御できるようになります(たとえホストベースの認証を使用します)。

0
ctrl-alt-delor

X仮想フレームバッファーを設定して、ヘッドレス継続的インテグレーションサーバーでQTestLibを使用してGUIアプリケーションのユニットテストを実行します。

Xvfb :1 &
PID=$!
DISPLAY=:1 make check
kill $PID
4
Lucas