web-dev-qa-db-ja.com

Windows上のCygwin:ディスプレイを開けません

私はSurface Pro 3でWindows 10を実行しています。Cygwinをインストールし、いくつかの便利なパッケージ(gvim、nedit、emacs、vim、g ++)も追加しました。しかし、gvimを実行すると、「ディスプレイを開けません」というメッセージが表示されます。 neditでも同じことが起こります。 $ DISPLAYをエコーすると、何も表示されなかったので、DISPLAYを:0.0に設定しました。 「ディスプレイを開けません」というメッセージがまだ表示されます。 cygwinを削除して再インストールしようとしましたが、同じ問題が発生します。

27
John

Unix GUIプログラムは Xサーバー を介して表示されます。 CygwinはXサーバーを自動的に起動しません。 install パッケージxorg-serverおよびxinit、および run startxwin

ソース: CygwinX FAQ

Xサーバー1.17以降、デフォルトではサーバーはTCP/IP接続をリッスンせず、UNIXドメインソケットでのローカル接続のみを受け入れます。ローカルクライアントの場合、DISPLAY=:0.0DISPLAY=localhost:0.0DISPLAY=127.0.0.1:0.0などではなく、DISPLAY=::1:0.0を使用します。

それが機能しない場合(リモートから接続している場合):-listen tcpオプションを使用して以前の動作を復元し、XサーバーがTCP/IPソケットを開くことができるようにします。

startxwin -- -listen tcp

最後に、Cygwinターミナルでxhost +を実行することを忘れないでください。

9
WhoCares

私を変えるのに役立ったのは

DISPLAY=:0.0 <mycommand>

DISPLAY=localhost:0.0 <mycommand>
4
Andriy

XLaunch/Xming を使用することもできます。

  • XLaunchを開き、[複数ウィンドウ]を選択して、ディスプレイ番号を設定します(問題ありません)。
  • Cygwinでは、export DISPLAY=[whatever your XLaunch Display number is]
  • gvim &でプログラムを起動します
2
rubynorails

私がそれをどのように機能させたか:

  • パッケージのインストールxorg-serverおよびxinit
  • Cygwin Shellウィンドウで次のコマンドを実行します。

    startxwin

    DISPLAY=localhost:0.0 xterm

ただし、正直に言うと、デフォルトのCygWinコンソールはXTermよりも優れているので、それを使い続けました。

1
Contango