This article link: http://zengrong.net/post/1557.htm
What are Cygwin and mingw? Please read this: Msys/mingw and CYGWIN/GCC.
With the inability to fully convert to a Linux system, I've been working under Cygwin, Learning Bash programming with a full set of Linux porting tools.
But Cygwin because the work in the simulation mode, the speed is slower, compared to, the MinGW will be much faster.
Here is the comparison of my choice:
features |
Cygwin |
mingw/msys |
MSYS2 |
whether GNU |
no |
Yes |
Yes |
more software support? |
supports most GNU software |
support common software, git, vim and other software need independent support (detailed introduction below) |
support most GNU software |
td> more class Linux?
Cygwin in Windows just like wine in Linux |
implements major Linux programs such as Bash |
native 64/32bit support |
GCC compilation | The
includes MingGW32 cross-compilation, supports both Cygwin1.dll-dependent program compilation and standalone Windows program compilation; You can compile applications under Linux directly |
support for standalone Windows program compilation |
support for standalone Windows program compilation |
Chinese support |
direct support for Chinese display and IME |
need to be configured to support Chinese display and input, delete a medium character need to be deleted 2 times |
support Chinese display and input method, Chinese help system and Chinese hint (part Software) |
run speed |
slow |
fast |
fast |
Git for Windows and Msysgit are built on Mingw/msys. But if you've already installed Mingw/msys and want to get git on your existing mingw/msys, it'll be a hassle, as described in the 2 articles below:
- Installing Git under MinGW (+msys)
- Using Msysgit from MinGW and vice versa
Also, when installing msysgit, be aware that the bin directory of Cygwin cannot be located in the PATH environment variable. Otherwise msysgit will refuse to install.
In the end, I decided to keep Cygwin. Git, vim, and Chinese are the main reasons.
2014-12-17 Update:
During this time, I tried MSYS2 and found that it was able to meet all of the requirements listed above. At the moment I have deleted the Cygwin and switched to MSYS2.
Here is the official introduction of MSYS2:
MSYS2 is an updated, modern version of MSYS, both of which was Cygwin (POSIX compatibility layer) forks with the aim of being Tter interoperability with native Windows software.
The name is a contraction of Minimal SYStem 2, and "aims to provide" support to facilitate using the bash shell, Autotools, Revision control systems and the like for building native Windows applications using Mingw-w64 toolchains.
The problem currently encountered is that Python PIP cannot be run under MSYS2. But I can use the Windows version of Python.
Post a run:
Cygwin and Mingw/msys/msys2, how to choose?