Cygwin System Requirements, Conventions, and Installation

System requirements

This toolkit is no longer supported under Cygwin. That being said, it's a generic Unix tool, and it's known to run on recent versions of Cygwin, as of February 2010. Because Cygwin versioning is so poorly managed, it's impossible to assign a particular version number. Previously, we distributed the necessary Cygwin modules; we no longer do so.

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


The conventions are identical to the Unix conventions.

You can access a "cmd" window running the Unix bash shell via Start -> Run -> "c:\cygwin\cygwin.bat".

A note about Cygwin paths

If you're using the Cygwin version, your command-line interactions (except the original installation) will happen in a Cygwin shell, as described above. File paths in Cygwin have a very consistent mapping to the Windows filesystem:

So /home/<user> corresponds to c:\cygwin\home\<user>, and /cygdrive/c/windows corresponds to c:\windows. (These equivalences might make it appear that /cygdrive/c/cygwin/cygdrive is the same as /cygdrive, but it turns out it's not; /cygdrive behaves as described only when it's the first directory component.)

If you ever need to refer to a pathname which has spaces in it, there are two ways to do that: either use a backslash before the space, or enclose the pathname in double quotes:

We are fairly certain at this point that MAT will work appropriately when there are spaces in pathnames, but we can't guarantee it.


First, ensure that you have Java installed. You'll need version 1.6.0_04 or later. The installer looks for any version of Java found in C:\Program Files\Java. The installer will probe all the Java versions and choose the newest one that meets the system requirements. If you don't have Java, you can get it from Sun.

Next, if you haven't installed Cygwin, do so. Then, ensure that you have the proper Cygwin packages. The packages that MAT requires are: python, make, gcc. You can either install these packages when you install Cygwin, or add them using the Cygwin installer afterwards.

Next, open a Windows cmd shell, e.g., via Start -> Run -> cmd. We recommend that you ensure that the output history is longer than the default 50 lines; click left on the leftmost icon in the top window bar in the "cmd" window, select Properties, select the Layout tab, and change "Height" under "Screen Buffer Size" to, say, 500.

Next, open the unzipped directory containing this distribution in your file viewer (e.g., navigating from "My Computer"). In the top directory of the distribution, you should see a file "install_for_cygwin.bat". Drag this file to the cmd shell window. (The reason we do this instead of just double-clicking on install.bat is to ensure that the output history doesn't go away after install.bat finishes, just in case something goes wrong). Switch to the cmd shell and press <return>.

The installer will first check for the presence of a Cygwin installation which contains python, make, gcc and ruby. If no installation is found, it will offer to install Cygwin and the required packages. Type "Y" or "y" to make this happen. If an installation is found which doesn't have the appropriate packages, the installer will list the missing packages and exit (it's not able to install just the missing packages for you). If an installation is found which has the appropriate packages, the installer continues.

Next, the installer will install the toolkit itself. This involves building some executable Python scripts, creating the appropriate associations between the core annotation package and the configured tasks, and placing a shortcut on your desktop to start up the Web server using Terminator. The name of the shortcut will be "MAT controller <version>", where <version> will be the version of the toolkit.

The output of the installer is fairly verbose. If it does not print out "Done" at the end, it hasn't completed appropriately.