As explained in 25.2 Installing GNU Autotools on Cygwin, GNU Autotools requires several
other tools to operate. Most Unices provide the majority, if not all,
of these prerequisites by default. Windows, unfortunately, does not.
Cygwin is better than most in this respect, and only a few extras are
required. The latest net release of Cygwin(58) has a packaging mechanism which downloads and installs
various Unix tools that have been precompiled for the Cygwin environment
by the Cygnus folks. To develop with GNU Autotools and Cygwin, you need to
install all of these packages to make sure you have all of the necessary
header files and compiler tools.
- Bourne shell
Cygwin provides a port of ash which is smaller and faster than
bash, but sometimes rejects arcane Bourne shell scripts. If you can
stand to sacrifice a little speed, it is worth copying the supplied
bash.exe to `/bin/sh.exe' to forestall any such
- GNU M4
Cygwin provides a port of GNU M4.
- GNU Make
At the time of writing, developers need GNU Make in order to do
dependency tracking (see section Automatic depedency tracking), though this is set to change in a future release
of Automake. Cygwin version 1.1.1 comes with a port of GNU
make-3.77, which I have personally never had any problems with.
The received wisdom from users is to manually upgrade to the latest
which compiles and installs from source without modification. Should
you experience (or anticipate) any Make related problems, you might try
upgrading to this version or later.
- GNU GCC
At the time of writing, GNU GCC is also needed by
Automake in order to do dependency tracking. Cygwin version
1.1.1 comes with a port of the latest GNU GCC compiler.
The current implementation of Automake (1.4) is written in
perl4, though it is likely that
perl5 will be
needed for Automake 1.5. The very latest versions of Perl now compile
out of the box on Cygwin(60).
There are some other pitfalls to installing a fully working Cygwin
environment on your Windows machine, but that is outside the scope of
this chapter. Cygnus host a mailing list archive and an
provide some level of support, and these should be your first port of
call in case the installation does not go according to plan.