What is it?
The Cygwin tools are ports of the popular GNU development tools for
Microsoft Windows. They run thanks to the Cygwin library which
provides the POSIX system calls and environment these programs expect.
With these tools installed, it is possible to write Windows console
or GUI applications that make use of significant parts of the POSIX API.
As a result, it is possible to easily port many Unix programs without the need
for extensive changes to the source code. This includes configuring
and building most of the available GNU software (including the packages
included with the Cygwin development tools themselves) as well as lots
of BSD tools and packages (including OpenSSH). Even if
the development tools are of little to no use to you, you may have
interest in the many standard POSIX utilities provided with the package.
They can be used from one of the provided Unix shells like bash, tcsh or zsh,
as well as from the standard Windows command shell if you have to for some
sad reason.
What versions of Windows are supported?
Cygwin can be expected to run on all modern 32 bit versions of
Windows, except Windows CE and Windows 95/98/Me. This includes, as of the
time of writing this, Windows NT4, Windows 2000, Windows XP, Windows Server
2003, Windows Vista, Windows Server 2008, as well as the WOW64 32 bit
environment on released 64 bit versions of Windows (XP/2003/Vista/2008).
As far as we know no one is working on a native 64 bit version of Cygwin.
Since Cygwin is a community-supported free software project, patches to
provide support for other versions would be thoughtfully considered.
Paid support contracts or enhancements are available through Red Hat. For
information about getting a Red Hat support contract, see
.
Keep in mind that Cygwin can only do as much as the underlying OS
supports. Because of this, Cygwin will behave differently, and
exhibit different limitations, on the various versions of Windows.
Where can I get it?
The home page for the Cygwin project is http://cygwin.com/.
There you should find everything you need for Cygwin, including links
for download and setup, a current list of mirror sites, a User's
Guide, an API Reference, mailing lists and archives, and additional
ported software.
You can find documentation for the individual GNU tools typically
as man pages or info pages as part of the Cygwin net distribution.
Additionally you can get the latest docs at
. (You should read GNU manuals from a
local mirror. Check
for a list of them.)
Is it free software?
Yes. Parts are GNU software (gcc, gas, ld, etc...), parts are covered
by the standard X11 license, some of it is public domain, some of
it was written by Red Hat (or the former Cygnus Solutions) and placed under
the GPL. None of it is shareware. You don't have to pay anyone to use it
but you should be sure to read the copyright section of the FAQ for more
information on how the GNU General Public License may affect your use of
these tools.
In particular, if you intend to port a proprietary (non-GPL'd)
application using Cygwin, you will need the proprietary-use license
for the Cygwin library. This is available for purchase from Red Hat;
please visit for more
information. All other questions should be sent to the public project
mailing list cygwin@cygwin.com.
Note that when we say "free" we mean freedom, not price. The goal of
such freedom is that the people who use a given piece of software
should be able to change it to fit their needs, learn from it, share
it with their friends, etc. The Cygwin license allows you those
freedoms, so it is free software.
What version of Cygwin is this, anyway?
To find the version of the Cygwin DLL installed, you can use
uname as on Linux or cygcheck. Refer to each command's
--help output and the Cygwin User's Guide for more information.
If you are looking for the version number for the whole Cygwin
release, there is none. Each package in the Cygwin release has its own
version. The packages in Cygwin are continually improving, thanks to
the efforts of net volunteers who maintain the Cygwin binary ports.
Each package has its own version numbers and its own release process.
So, how do you get the most up-to-date version of Cygwin? Easy. Just
download the Cygwin Setup program from
http://cygwin.com/setup.exe. This program will handle the task
of updating the packages on your system to the latest version. For
more information about using Cygwin's setup.exe, see
Setting Up Cygwin
in the Cygwin User's Guide.
Who's behind the project?
(Please note that if you have cygwin-specific
questions, all of these people will appreciate it if you use the cygwin
mailing lists rather than sending personal email.)
Christopher Faylor (cgf) is one of the project leads. Chris works for
Netapp but all of his Cygwin activities occur on his own time. He is
most notably responsible for the support of signal handling and
fork/exec in Cygwin. He also administer's the site which hosts the
cygwin web site and release.
Corinna Vinschen (corinna) is the other project lead. Corinna is a
senior Red Hat engineer. Corinna is responsible for such important
subsystems as security and networking and has recently added support to
Cygwin for wide characters, increased path length, IPv6, advisory
file locking and more.
Yaakov Selkowitz is the Cygwin/X coordinator. Jon Turney serves on the
Cygwin/X team as a developer.
The Cygwin setup project is currently maintained by a group of people, most notably, Brian Dessent (brian) and Dave Korn (dave.korn).
Please note that all of us working on Cygwin try to
be as responsive as possible and deal with patches and questions as we
get them, but realistically we don't have time to answer all of the
email that is sent to the main mailing list. Making Net releases of the
Win32 tools and helping people on the Net out is not our primary job
function, so some email will have to go unanswered.
Many thanks to everyone using the tools for their many contributions in
the form of advice, bug reports, and code fixes. Keep them coming!