More or less from its web page
cygwin is
- a POSIX compatibility layer on top of windows API. This is mainly encapsulated in a cygwin1.dll
- a distribution system and repository of open source software compiled with this dll.
In a nutshell, if you have a linux source, you can try to recompile for cygwin and be able to run it on windows...
This enables to have accessible many of the typical unix commands (shells, gcc/g++, find....)
Alternatives are:
- MSYS: are a set of typical unix command implemented in windows.
- mingw: A gcc/g++ target able to produce win32 programs (note that cygwin gcc/g++ programs will have a dependency on cygwin1.dll that mingw programs will not have).
make
in windows ;-) – Donau