### Operating system

`polymake` can be used on UNIX systems only. It has been successfully tested on Linux, FreeBSD, Sun Solaris, MacOS X, IBM AIX and Tru64 Unix. Other UNIX variants might do, too, provided all necessary tools listed below are properly installed.

`polymake` does not run on any Windows system natively. If you really need it, you are welcome to try it in a Unix emulation environment, such as Cygwin. However, due to the ongoing shortage of manpower, we can't afford to give any support for this platform.

### C++ compiler

On the most UNIX systems, polymake can be compiled only with GNU `gcc`. Versions older than 3.3 won't do. We recommend to take the latest version of the 3.4 branch (3.4.6 as of the late 2006).

gcc 4.1 should be used with great caution, as its new optimization engine is not very reliable yet. On various platforms we have got few miscompiled client programs, which either crash or compute wrong results. Should you experience something similar, consider to reduce the optimization level (for the price of performance penalties) or fall back to a more reliable previous compiler version.

If you are working with Linux on an Intel-based PC, you can also take the Intel C++ compiler. It is free for non-commercial use. Version 8.1 or newer will work. Don't get worried about numerous messages appearing during the compilation; they are all harmless.

Regarding other commercial compilers, those from Sun (Forte) and IBM are still not close enough to the ANSI C++ standard; dont't even bother trying them.

The Comeau C++ compiler is also a good choice. It is not for free, but rather inexpensive. Be sure to use the recent version >= 4.3.3. From our experience we can tell it's the most economic compiler with respect to machine resources, but the produced code is sligthly slower than that by `gcc`. Another drawback is that debugging with gdb is almost impossible.

### perl

Significant parts of polymake are written in Perl; you will need it already in the configuration step. The most modern UNIX distributions contain perl out of the box, so this requirement should cause you the least trouble. Every stable perl version from 5.8.1 upwards will do.

### GMP

This is a library for exact computations with arbitrary precision. It is usually pre-installed on the most modern Linux/UNIX systems. The latest version is also accessible via the software distribution platforms like rpmfind, Fink, or Blastwave. Alternatively you can download the sources directly from the GMP site and get it optimally tuned to your hardware.

When using precompiled packages, please pay your attention to get the complete GMP installations. Some distributions are using to split packages into basis and development subpackages. Be sure to install both. If in doubt, simply check the presence of the header file gmp.h .

Please get GMP ready before you start with polymake installation.

### make

The installation procedures rely heavily on the advanced features of GNU make utility; any other `make` will fail.

You will need the version 3.80 or newer. It is ported on almost every UNIX platform, and the installation is quite simple and straightforward. Moreover, each Linux system configured for "Software Development" contains it out of the box. Be aware that on some other UNIX systems the GNU make is available as gmake.

### Hardware

To compile polymake from the source code, you will need a rather powerful machine with at least 300 MB RAM (for `gcc` 3.3 or `icc` even more). The C++ compilers are extraordinarily RAM-thirsty while compiling deeply nested templates, which `polymake` has a lot of.

Resources required to run `polymake` itself are moderate. It scales naturally with the complexity of your problems.