emacs cygwin

¿Por qué mi Emacs en Cygwin ejecutándose en Windows Seven, siempre crea Crash Dump?



(4)

Estoy bastante satisfecho de cómo funcionan las herramientas GNU en mi Cygwin en Windows Seven. Creo que es más fácil usar GNU / Linux, pero mi empresa aquí tiene la política de usar Windows Seven para el entorno de programación de Programador. Entonces, la solución es Cygwin. Y uso Emacs intensivamente para mi propósito de programación.

Pero, parece que Emacs ejecutando en Cygwin crea un volcado de caída consistente (phrew) que se imprimió en la consola. Tuve que actualizarlo con Cl, pero eso me hace preguntarme: ¿cuál es el problema de todos modos?

¿Alguien tiene el mismo problema aquí? Y cual es la solución. Este es mi ejemplo de ejecutar org-googlecl.

Proceso de lista de googlecl terminado

* List of blogs with in the * List of blogs with in the title :gblog: 12719501 [main] emacs-X11 1168 exception::handle: Exception: STATUS_ACCESS_VIOLATION 12720164 [main] emacs-X11 1168 open_stackdumpfile: Dumping stack trace to emacs-X11.exe.stackdump 12889237 [main] emacs-X11 764 exception::handle: Exception: STATUS_ACCESS_VIOLATION 12889852 [main] emacs-X11 764 open_stackdumpfile: Dumping stack trace to emacs-X11.exe.stackdump

Y siempre crea emacs-X11.exe.stackdump. Siempre sucede cuando ejecuto otro proceso desde emacs, es decir, si ejecuto un archivo por lotes desde Emacs.

Gracias


He tenido este mismo problema al ejecutar la consola emacs a través de cygwin en Windows 7.

Mi solución fue instalar el cliente GNU Emacs Windows nativo: http://ftp.gnu.org/gnu/emacs/windows/ y configurar bash.exe de cygwin como mi shell.

Puede ver mi emacs.d / init.el en https://github.com/tildedave/init.el/blob/master/init.el : aquí está la parte relevante para asegurarse de que Windows 7 Emacs juegue bien con cygwin -

(if is-windows (progn (add-hook ''comint-output-filter-functions ''shell-strip-ctrl-m nil t) (add-hook ''comint-output-filter-functions ''comint-watch-for-password-prompt nil t) (setq explicit-shell-file-name "bash.exe") (setq shell-file-name explicit-shell-file-name)))

Para la edición liviana en la consola, uso nano, que no es un volcado de memoria.


No puedo ayudar con el problema específico, pero como una posible alternativa podría considerar ejecutar Emacs en una máquina virtual de Linux alojada en su caja de Windows. Puede usar el servidor X.org de Cygwin como la pantalla, por lo que el resultado final es prácticamente el mismo que el uso de Emacs de Cygwin.

Significa saltar a través de unos cuantos aros más, pero me parece una buena solución y, con suerte, evitará los choques.

Estoy usando VirtualBox para alojar mi máquina virtual.


Recientemente me encontré con este problema al actualizar mi versión de Cygwin a 1.7.9-1. La solución de pserice parecía prometedora pero no funcionó para mí. La solución que funcionó para mí fue ejecutar rebaseall :

  1. Cierre TODOS los procesos de Cygwin (use Process Explorer para asegurarse de que nada haya cargado cygwin1.dll)
  2. Inicio> Ejecutar> Cmd.exe
  3. cd /cygwin/bin
  4. ash
  5. PATH=.
  6. rebaseall -v

Después de eso, emacs dejó de bloquearse cada vez que intentaba ejecutar un subproceso.


Win7 aborta los procesos que sobrescriben partes de la pila. Si confía en los ejecutables de cygwin, puede excluirlos selectivamente de la siguiente manera:

Computer -> Properties -> Advanced System Settings -> Performance -> Settings... -> Data Execution Prevention

Excluí lo siguiente:

C:/cygwin/bin/bash.exe C:/cygwin/bin/emacs.exe C:/cygwin/bin/emacs-nox.exe C:/cygwin/bin/emacs-X11.exe C:/cygwin/bin/startxwin.exe