| || |
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 problems.
- 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 version,
make-3.79 (59), 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 FAQ (61) to provide some level of support, and these should be your first port of call in case the installation does not go according to plan.