Installation
Installation and system requirements

The &SCSCP; client for &GAP; is fully functional under &GAP; 4.4 and works in UNIX/Linux environments, Mac OS X (UNIX installation) and MS Windows.

The &SCSCP; server for &GAP; works in UNIX/Linux environments and Mac OS X (UNIX installation), but does not work under MS Windows. It is fully functional with the &GAP; development version and goes automatically into the compatibility mode to work with &GAP; 4.4.12 and earlier versions. The only limitation of this compatibility mode is that in the case of an error the break loop occurs on the server and can not be transmitted to the client (however, if the service consumer is the service provider himself/herself, then this is not as crucial as it might be in the general case). After the &GAP; 4.5 release the package will fully be compatible with the official &GAP; releases.

To use the &SCSCP; package it is necessary to install recent versions of &GAP;4 packages &IO; , &GAPDoc; and &OpenMath; .

The &SCSCP; package is distributed in standard formats (tar.gz, tar.bz2) and can be obtained from http://www.cs.st-andrews.ac.uk/~alexk/scscp.htm or from the &GAP; web site (the latter also offers zoo- and win.zip-archives. To unpack the zoo-archive the program unzoo is needed, which can be obtained from the &GAP; homepage http://www.gap-system.org/ (see section `Distribution'). To install &SCSCP; package, put its zoo-archive into the pkg subdirectory of your &GAP;4.4 installation and enter the command unzoo -x scscp-X.X.X.zoo, then the subdirectory scscp (containing subdirectories doc, lib etc.) will be created in the pkg subdirectory. Installation using other archive formats is performed in a similar way.

When there are no access rights to the root directory of the main &GAP; installation, it is also possible to install the package outside the &GAP; main directory by unpacking it inside a directory MYGAPDIR/pkg. Then to load the package &GAP; should be started with -l ";MYGAPDIR" option.

Configuration files

There are four files in the package which may need to be modified to setup and customise the package.

The first three files are related with the server's functionality:

scscp/config.g
specifies: default InfoLevel for the class; default &SCSCP; server name and port to be used by if &GAP; is started with the scscp/example/myserver.g file; whether the server accepts calls to procedures which are standard &OpenMath; symbols, or only procedures installed in the transient content dictionary (see ); service description to be returned to the client by .
scscp/gapd.sh
is the script to start the &GAP; &SCSCP; server as a daemon. To use it, adjust the local call of &GAP; and, if necessary, call options (for example, memory usage, startup from the workspace etc.) and the location of the root directory of the &SCSCP; package in section 1 of this script.
scscp/example/myserver.g
is an example of the server configuration file which loads all necessary packages, reads all needed code, installs all procedures which will be exposed to the client and finally starts the &SCSCP; server (see Chapter ).

The fourth file is related with the client's functionality for parallel computations:

The file scscp/configpar.g assigns the global variable SCSCPservers which specifies a list of hosts and ports to search for &SCSCP; services (which may be not only represented by &GAP; services, but also by another &SCSCP;-compliant systems). It will be used to run parallel computations with the &SCSCP; package (see Chapter ).

See comments in these configuration files for further details and examples.