Installation and Preface

To install the package, just unpack it in your packages directory (usually ~/gap/pkg for local installation).

To use `polymaking`, you need a working installation of the program polymake http://www.math.tu-berlin.de/polymake/. The package has been tested on linux and Mac OS X (10.4 and 10.5). But it should be as platform independent as &GAP; and polymake.

The interaction with polymake is restricted to writing files and carrying out simple operations looking like

polymake file KEYWORD1 KEYWORD2 KEYWORD3

on the command line. Scripts are not supported. From vertsion 0.7.2 on, there is limited client-support. All clients that are called like
client outfile infile1 infile2 ... -option1 -option2
can now be called from &GAP; via .

A few words about the installation of polymake
polymaking
will try to guess the location of polymake. If this fails, a warning is issued at load time (InfoWarning level 1). Note that the guessing procedure is suppressed when is set manually (see ).
Note that polymake calls other external functions ("clients") to do some work for it. These functions must be either in the path from which GAP was called or in a path listed in the PATH environment variable. You can set it using the shell command
setenv PATH ${PATH}:<your polymakepath>
The general rule is: If `polymaking` finds polymake by itself, there is nothing to worry about.
Setting variables for external programs

As `polymaking` uses the program polymake, it needs to know where this program lives. The communication with polymake is done by writing files for polymake and reading its output (as returned to standard output "the prompt"). Note that the interface does not read any polymake file.

Sets the directory in which all polymake files are created to dir. The standard place for these files is a temporary directory generated when the package is loaded. This manipulates .
Sets the name for the polymake program to command. This manipulates .
Defines directories which contain polymake client programs. SetPolymakeClientPaths(dirs) sets to dirs which has to be a list of directory objects.
Setting variables permanently
To permanently set the values of , and , add the lines

POLYMAKE_DATA_DIR:=Directory("/home/mypolymakedatadir"); POLYMAKE_COMMAND:=Filename(Directory("/home/mypolymakebindir/"),"polymake"); POLYMAKE_CLIENT_DIRS:=[Directory("/home/myclients/"),Directory("/home/moreclients/")];

to your .gaprc file (see ). Note that these have to be before the LoadPackage("polymaking"); line. Or you can change the values of the above variables by editing lib/environment.gi