Unix System Requirements, Conventions, and Installation

System requirements

This toolkit is designed to run on generic Unix. However, due to the difficulties in supporting the possible range of configurations, we are testing it, and providing detailed installation instructions, only for Linux Ubuntu 9.10. Note: as of 2.0, Cygwin is no longer supported, because Python in Cygwin does not include sqlite bindings, which are now required for MAT workspaces.

This toolkit depends on a number of external tools which must be installed before you install MAT. For the Unix version, they are:


MAT is primarily a Unix-based tool, so many of the conventions used here will come from Unix.

We'll show command lines in fixed-width type, in boldface; the system output in response will be in normal face:

% pwd

Throughout the documentation, we'll refer to the location of the MAT source tree as the variable MAT_PKG_HOME, as in the following command:


If you received this distribution as a tar or a zip file, MAT_PKG_HOME is the directory src/MAT inside the unpacked zip file. If you checked this distribution out of CVS, it will be the root directory you checked out via "cvs checkout MAT".

All command lines in this documentation are Unix command lines, unless otherwise indicated. The Unix shell assumed is bash. To set the MAT_PKG_HOME variable, do this:

% export MAT_PKG_HOME=<dir>

where <dir> is the appropriate value for MAT_PKG_HOME.

In some cases, you'll see a backslash followed immediately by a line break in command-line examples:

% bin/MATEngine --task 'Named Entity' --workflow Demo --steps 'zone,tokenize' \
--input_file $PWD/sample/ne/resources/data/raw/voa2.txt --input_file_type raw \
--output_file ./voa2_txt.json --output_file_type mat-json

These backslashes and line breaks are not required parts of the command line; they're present simply to enable us to present the command line in a reasonable width. If you type them in the bash shell, they'll work just fine; you'll get a continuation prompt (">") and you can keep typing. But you can omit them.

MAT may be installed in directories whose paths contain spaces. If you do this, you'll likely have to wrap double-quotes around any references to MAT_PKG_HOME or subdirectories thereof:

% cd "$MAT_PKG_HOME"
% ls "$PWD"

If you don't do this, you'll likely encounter bizarre behavior due to the path being expanded and split into command-line tokens according to the whitespace in the path.


A clean Ubuntu 9.10 installation is missing a number of packages, which someone suitably knowledgeable should install using the Synaptic package manager. Those packages are:

Once these packages are installed, you may proceed with the installation, as follows:

During the installation, you might be prompted for various paths and locations which the toolkit requires.

When the installation is complete, your runtime environment will be configured for you. The installed directory is not relocatable; you must rerun the installer if you move the installation.

Upgrading dependencies or moving the installation

If you want MAT to use a new version of Java or Python because the Java or Python on your machine has been upgraded and the old version is no longer present, just rerun the installer. The installer will find the updated versions and reconfigure your tools.

If you want to move the MAT installation from one location to another on the same machine, just move the toplevel MAT directory - it's completely self-contained. If you want to move the MAT installation to another machine, the safest thing to do is reinstall on that new machine.