Cygwin en Windows: no se puede abrir la pantalla

25

Estoy ejecutando Windows 10 en mi Surface Pro 3. Instalé Cygwin y también agregué algunos paquetes útiles (gvim, nedit, emacs, vim, g ++). Sin embargo, cuando ejecuto gvim, aparece "No se puede abrir la pantalla". Lo mismo sucede con nedit. Cuando hice eco de $ DISPLAY, no mostré nada, así que configuré DISPLAY en: 0.0. Todavía me aparece "no se puede abrir la pantalla". Intenté quitar cygwin y volver a instalarlo, pero tengo el mismo problema.

John
fuente
1
Parece que el servidor X11 no se está ejecutando. ¿Has trabajado los pasos en x.cygwin.com ?
thrig
Permítanme aclarar también que estoy ejecutando Cygwin en mi máquina, donde soy administrador. Sí, instalé los paquetes x11 y examiné los problemas x11, pero eso no resuelve el problema.
John

Respuestas:

24

Programas Unix GUI muestran a través de un servidor X . Cygwin no inicia automáticamente un servidor X. Necesita instalar los paquetes xorg-servery xinit, y ejecutarstartxwin .

Gilles 'SO- deja de ser malvado'
fuente
44
A partir de 2017/01, startxwin está incluido en el paquete xinit
David Ljung Madison Stellar
8

Fuente: Preguntas frecuentes sobre CygwinX :

Desde el servidor X 1.17, de forma predeterminada, el servidor no escucha las conexiones TCP / IP, solo acepta conexiones locales en un socket de dominio Unix. Para los clientes locales, el uso DISPLAY=:0.0, en lugar de DISPLAY=localhost:0.0, DISPLAY=127.0.0.1:0.0, DISPLAY=::1:0.0, etc.

Si no funciona (si se está conectando desde un control remoto): use la -listen tcpopción para restaurar el comportamiento anterior, permitiendo que el servidor X abra también un socket TCP / IP, p. Ej.

startxwin -- -listen tcp

Finalmente, no olvides correr xhost +en la terminal Cygwin.

A quien le importa
fuente
4

Lo que me ayudó está cambiando

DISPLAY=:0.0 <mycommand>

a

DISPLAY=localhost:0.0 <mycommand>
Andriy
fuente
extraño, ejecutándose localmente, después de instalar todos los paquetes y ejecutar xlaunch por primera vez con la pantalla predeterminada (0), el siguiente comando funciona para mí: DISPLAY =: 0.0 gimp
theRiley
2

También puede usar XLaunch / Xming .

  • Abra XLaunch, elija "Ventanas múltiples" y configure un número de Pantalla (no importa).
  • En Cygwin, export DISPLAY=[whatever your XLaunch Display number is].
  • Inicie su programa con gvim &
rubynorails
fuente
1

Cómo lo hice funcionar:

  • Instalar paquetes xorg-servery xinit.
  • Ejecute estos comandos en una ventana de shell Cygwin:

    startxwin

    DISPLAY=localhost:0.0 xterm

Sin embargo, para ser sincero, la consola CygWin predeterminada es mejor que XTerm, así que seguí usándola.

Aplazamiento de pago
fuente
-2

solo exportalo

export DISPLAY = localhost: 0.0

para hacer persistente agregue eso a su .bash_profile

usuario30772
fuente