linux - how - msys 2
Diferencia entre GNUWin32 y cygwin (1)
Parece que no puedo entender la diferencia entre los dos.
Parece que uno ( GNUWin32
) es una capa en la parte superior de las ventanas (como MSYS
) y el
other (cygwin) es otra cosa (?)
Qué significa eso? ¿Cuándo usaría uno sobre el otro? ¿Son los dos adecuados para la misma cosa?
Quiero usarlo principalmente para git, pero quiero mantener mis opciones abiertas para aprender y hacer todas las cosas * nixy.
¿Hay otra herramienta para esto? ¿Será msysgit
más adecuado para esto?
¿Hay recursos que atraviesen las diferencias de todas estas plataformas * nix de forma exhaustiva?
Cygwin es una biblioteca que se esfuerza por hacer que los programas UNIX puedan compilarse y ejecutarse en sistemas Windows con modificaciones mínimas o sin modificaciones, y un conjunto completo de herramientas y aplicaciones UNIX empaquetadas compiladas con esta biblioteca. Es casi una envoltura completa alrededor de Windows. Incluye un servidor X y una gran cantidad de programas que puede esperar encontrar en una distribución de Linux. Es ideal para las personas que desean aprender o usar la línea de comandos de UNIX en Windows.
MSYS es principalmente un puerto de las herramientas UNIX necesarias para crear paquetes de estilo GNU (con una configure
etc.) en sistemas Windows con el compilador MinGW . Utiliza una variante de la biblioteca de Cygwin modificada para sacrificar cierta compatibilidad por eficiencia, y es más compatible con Windows.
GnuWin32 es simplemente un puerto de algunas de las herramientas de GNU para Windows. Al igual que MSYS, usa msvcrt.dll
, así como una biblioteca adicional para proporcionar algunas funciones de compatibilidad con UNIX. Su objetivo principal parece ser permitir que los programas de Windows y los archivos por lotes utilicen algunos de los programas y bibliotecas de GNU directamente.
En su mayor parte, todos proporcionan programas UNIX en Windows, pero hay muchas diferencias sutiles, que incluyen:
- Intención. Cygwin es para personas que desean usar UNIX en su sistema operativo Windows. MSYS es para personas que desean crear programas de Windows utilizando las herramientas de compilación GNU / UNIX. GnuWin32 es un puerto de bibliotecas y programas GNU individuales para Windows.
- Archivos de texto, particularmente finales de línea. Cygwin te permite usar CR / LF o LF. MSYS espera terminaciones de línea LF. Los programas GnuWin32 esperan terminaciones de línea CR / LF.
- Programas suministrados. En particular, Cygwin tiene muchos más paquetes, y GnuWin32 no proporciona ningún shell.
En cuanto a git, está disponible con Cygwin; esta versión se puede usar en un directorio de Windows (accesible en /cygdrive
). Además, como se mencionó, hay msysgit .