J'utilise Windows 10 sur ma Surface Pro 3. J'ai installé Cygwin et j'ai également ajouté des packages utiles (gvim, nedit, emacs, vim, g ++). Cependant, lorsque j'exécute gvim, j'obtiens "Impossible d'ouvrir l'affichage". La même chose se produit avec nedit. Lorsque j'ai fait écho à $ DISPLAY, je n'ai rien montré, j'ai donc réglé DISPLAY sur: 0.0. J'obtiens toujours "impossible d'ouvrir l'écran". J'ai essayé de supprimer cygwin et de réinstaller, mais j'obtiens le même problème.
Les programmes GUI Unix s'affichent via un serveur X . Cygwin ne démarre pas automatiquement un serveur X. Vous devez installer les packages xorg-server
et xinit
, et exécutez startxwin
.
Source: FAQ CygwinX :
Depuis le serveur X 1.17, par défaut, le serveur n'écoute pas les connexions TCP/IP, acceptant uniquement les connexions locales sur un socket de domaine Unix. Pour les clients locaux, utilisez DISPLAY=:0.0
, plutôt que DISPLAY=localhost:0.0
, DISPLAY=127.0.0.1:0.0
, DISPLAY=::1:0.0
, etc
Si cela ne fonctionne pas (si vous vous connectez à distance): utilisez le -listen tcp
option pour restaurer le comportement précédent, permettant également au serveur X d'ouvrir un socket TCP/IP, par exemple.
startxwin -- -listen tcp
Enfin, n'oubliez pas d'exécuter xhost +
dans le terminal Cygwin.
Ce qui m'a aidé change
DISPLAY=:0.0 <mycommand>
à
DISPLAY=localhost:0.0 <mycommand>
Vous pouvez également utiliser XLaunch/Xming .
export DISPLAY=[whatever your XLaunch Display number is]
.gvim &
Comment je l'ai fait fonctionner:
xorg-server
et xinit
.Exécutez ces commandes dans une fenêtre Cygwin Shell:
startxwin
DISPLAY=localhost:0.0 xterm
Cependant, pour être honnête, la console CygWin par défaut est plus agréable que XTerm, j'ai donc continué à l'utiliser.