Cygwin, MSYS2 and MinGW-w64
Cygwin: Get that Linux feeling - on Windows. a large collection of GNU and Open Source tools which provide functionality similar to a Linux distribution on Windows. a DLL (cygwin1.dll) which provides substantial POSIX API functionality.
MSYS2 is a collection of tools and libraries providing you with an easy-to-use environment for building, installing and running native Windows software.
mingw-w64 is a collection of header files, import libraries, libraries and tools that, when combined with a compiler toolchain, such as GCC or LLVM, provides a complete development environment for building native Windows applications and libraries.
In short:
- Cygwin: Build and run GNU/Linux tools for windows (requires a cygwin1.dll).
- MSYS2: Build, install and run native Windows softwares.
- mingw-w64: C/C++ build toolchain for native Windows softwares.
NOTICE: Both Cygwin and MSYS2 requires Win10 or newer, mingw-w64 works ok on old OS such as Win7.
Cygwin
Recommend packages
- autossh
- openssh
- curl
- wget
- git
- vim
- jq
- p7zip
- unzip
Recommend packages part II
- python3
- python-pip-wheel
- ctags
MSYS2
Install the main binary msys2-x86_64-20250830.exe https://github.com/msys2/msys2-installer/releases/download/2025-08-30/msys2-x86_64-20250830.exe
then install mingw-w64 GCC: pacman -S mingw-w64-ucrt-x86_64-gcc
mingw-w64
version: 8.5.0 (gcc version)
architecture: 64 bit
thread model:
- win32: Windows-specific, Native Windows API
- [check] posix: POSIX Standardized API
build revision: rev0
exceptions:
- SEH: Structured Exception Handling
- [check] SJLJ: Setjmp/Longjmp
- msvcrt: Microsoft Visual C++ Runtime
- [check] ucrt: Universal C Runtime
