Dependencies for 3.0 and earlier versions
Before you start you should check whether you have got all the building tools and prerequisite packages:
- C and C++ compilers (one of the following):
gcc
andg++
, version 4.2+ (Note that these might come in several packages)clang
, version 3.2+
- C++ Library (one of the following):
- GNU C++ Library. (On Linux this is usually already in the base system, or comes with
gcc
) - libc++, might come with LLVM/clang (supported since polymake version 3.0)
- XML processing tools:
libxml2
,libxslt
(both being standard components of Gnome environment)
- GNU Readline & History library v5.0+
- Perl 5.10.0+, with all of the following modules:
ExtUtils::Embed
, which some distributions ship separately asperl-ExtUtils-Embed
XML::LibXML
,XML::LibXSLT
, andXML::Writer
Term::ReadLine::Gnu
Term::ReadKey
(only for the development version of polymake)
- GMP library 4.2.0+ . Some Linux vendors split the GMP in two packages, shared libraries and development stuff. Please install both. You also need to enable/install the C++ bindings for polymake version 2.11+.
- MPFR library 3.0.0+ . Again both shared libraries and development stuff are required.
Configuration of Version 2.9.8
The next step after unpacking the tar ball is
make configure
. polymake is not based on autoconf, it rather tries to gain as much information as possible from the system perl
configuration; for the rest it will ask you. The questions can be divided into three groups:
- installation locations
- C/C++ compiler choice and options
- Java related stuff
The location chosen for the polymake
start script should be one contained in your (and your colleagues') PATH
. If you don't like this, you can later define a shell alias pointing to the start script. Unlike old versions, there are no other executables in polymake that should be accessible via PATH
, as the whole former clients have been transformed into library functions.
Beware that the directory which you build polymake
in and the one which you want polymake
to install to must be distinct and not contained in one another.
Having run make configure
once, you get a new subtree build.ARCH
, where ARCH
is usually an abbreviation of your hardware platform as reported by uname -m
. There resides a file conf.make
which can be manually edited, if necessary. If you subsequently repeat the configuration step on several hardware platforms (e.g. 32-bit and 64-bit Intel/AMD CPU), polymake will reuse most of the answers given for the first platform as default settings.