que bash cygwin msys2

bash - msys2 que es



Diferencias entre MSYS2 y Cygwin (2)

Tradicionalmente, MSYS bash ha sido considerado inferior a Cygwin bash. La primera era una herramienta auxiliar dentro de MinGW diseñada para ejecutar scripts de autoconf. Pero ahora hay MinGW-w64 y MSYS2. Este último se envía con un gestor de paquetes como pacman dulce y conchas elegantes como zsh, así que me pregunto si todavía hay un hueco en la capa de emulación.

Si bien las aplicaciones MinGW * son ejecutables nativos de Windows, el software MSYS2 requiere una capa de emulación POSIX, al igual que Cygwin. Al menos para un usuario ocasional, es difícil detectar las diferencias entre los dos.

  • ¿Cuáles son las diferencias funcionales entre las dos capas de emulación (si las hay)?
  • ¿Qué emulación es más rápida (más eficiente)?

Según tengo entendido, MSYS2 es una bifurcación de Cygwin con el objetivo principal de ofrecer la posibilidad de utilizar los paquetes MinGW-w64. Ese objetivo se logra a expensas de la cantidad total de software disponible. Compara la lista de la de MSYS2 y Cygwin .

Esencialmente, eso es todo. Entonces, si bien no era necesario compilar algo bajo MinGW-w64, difícilmente tendría alguna razón para usar MSYS2 en lugar de Cygwin original.


Tradicionalmente, el bash de MSYS ha sido inferior, pero principalmente porque Cygwin permaneció en desarrollo activo mientras que MSYS no lo hizo. MSYS se bifurcó de Cygwin versión 1.3.3 y nunca se volvió a sincronizar, mientras que MSYS2 se sincroniza con el proyecto Cygwin regularmente.

No tenemos un "gestor de paquetes como el de pacman dulce", tenemos una re-compilación directa del gestor de paquetes de pacman de Arch Linux que podríamos lograr.

MSYS2 no tiene cygwin.dll pero tiene msys-2.0.dll que hace lo mismo (y algunos más). En concreto, los argumentos que parecen caminos y el PATH env. var se convierten al formulario de Windows al ejecutar software nativo de Windows.

En cuanto a si es más lento, espero que haya muy poca diferencia, pero MSYS2 sería un poco más lento debido al trabajo de conversión adicional. Por otra parte, es probable que ejecute más software nativo de Windows desde MSYS2 (como los compiladores MinGW-w64) que Cygwin, por lo que cambiará las cosas a favor de MSYS2.