Now the most straightforward way to build everything is to try your luck and type in:
make
make install
In the most fortunate case the installation script will ask you exactly one question: where to install polymake. You can agree
with the default proposal /usr/local/polymake (but note that on many Linux systems only the superuser may install
new files there), or type in a path of your choice. Expressions like ~, ~user, or
$env_variable are interpreted exactly as a bash or csh would do.
If everything has successfully finished, proceed with the step 4 below. Note for impatient: the compile stage can be very long:
as of now, the C++ programs with deeply nested templates (and such is polymake) are compiled very slowly and with huge memory
consumption.
If you want to perform some fine-tuning, you can run the configuration step explicitly:
make configure
make
make install
In this case you have to answer a couple more questions. First of all, you can choose between a single-architecture and a
multi-architecture installation. The latter choice makes sense in a heterogeneous network consisting of computers of various
architectures. It stipulates a shared location for architecture-independent files (perl modules, rules, etc.) and separate
directories for binary files.
You may also choose an alternative location for the HTML documentation, where your local WWW server prefers to see its
documents.
Further you can specify the location of the C++ compiler, its optimization level (the default
-O3 is rather optimistic),
and whatever additional compiler and linker flags you might consider useful.
For example, specifying an exact type of your CPU, such as -mcpu=ultrasparc or -march=athlon,
can significantly accelerate the rational arithmetic which takes the main part of the computation time in polymake.
The supported C++ compilers are listed
here.
Since different compilers have different command line syntax, the configuration script tries
to choose the right one based on the compiler program name. Currently it assumes GNU if the compiler
program path ends with
g++ or
c++ (with optional version suffix), Intel C++ by
icc or
ecc, and Comeau by
como. You are free to modify the configuration script if this does not match your
installation.
If you are going to develop your own polymake clients, you will need a bit more to be installed: the library implementing the
client-server communication, the sources of, and the documentation to the Template Library. It is accomplished with an
additional command make install-devel .
If you have chosen the multi-architecture installation, you must now log in on a computer of the next architecture. Then you
run make to compile the binaries and make install-bin to put them to the right
place. make install would indeed do it, too, but it would unnecessarily overwrite the shared
files already installed in the first architecture step. For the same reason, the client development environment should be
installed with make install-devel-bin .
Run
polymake --help and watch for the warnings about lacking external packages.
Download and install those you are interested in. First of all, some visualization software,
preferably
JavaView.
By the way, if you install JavaView prior to polymake, then the configuration script gets a chance to find it and to prepare
the Java components to work properly from the very beginning.
If you install an external package later on, don't forget to run polymake --reconfigure to enable the corresponding
interface.