GF Logo

Grammatical Framework Download and Installation

GF 3.2 was released on 23 December 2010.

What's new? See the Release notes.

Binary packages for the latest release

Platform Download How to install
Ubuntu (32-bit) gf_3.2-4_i386.deb Double-click on the package icon, or use sudo dpkg -i gf_3.2-4_i386.deb
Ubuntu (64-bit) gf_3.2-4_amd64.deb Double-click on the package icon, or use sudo dpkg -i gf_3.2-4_amd64.deb
Linux (32-bit) gf-3.2-bin-i386-linux.tar.gz sudo tar -C /usr/local -zxf gf-3.2-bin-i386-linux.tar.gz
Linux (64-bit) gf-3.2-bin-x86_64-linux.tar.gz sudo tar -C /usr/local -zxf gf-3.2-bin-x86_64-linux.tar.gz
MacOS X gf-3.2-snowleopard.pkg Double-click on the package icon and follow the instructions
MacOS X gf-3.2-bin-intel-mac.tar.gz sudo tar -C /usr/local -zxf gf-3.2-bin-intel-mac.tar.gz
Windows unzip

More packages might be added later.


The Windows package is installed by just unpacking it anywhere. It finds the libraries relative to the .exe file.

The .deb packages work on Ubuntu 10.04 and 10.10.

The .pkg package works on MacOS X 10.6 (Snow Leopard). The MacOS tar package works on 10.5 (Leopard) and 10.6 (Snow Leopard).

The MacOS and Linux tar packages are designed to be installed in /usr/local. You can install them in other locations, but then you need to set the GF_LIB_PATH environment variable:

    export GF_LIB_PATH=/usr/local/share/gf-3.2/lib

where /usr/local should be replaced with the path to the location where you unpacked the package.

Installing the latest release from source

GF is on Hackage, so the prodedure is fairly simple:

  1. Install the Haskell Platform 2010.2.0.0 (July 2010).
  2. cabal update
  3. On Linux: install some C libraries from your Linux distribution (see below)
  4. cabal install gf

You can also download the full source package from here: gf-3.2.tar.gz.


The above steps installs GF for a single user and does not require root privileges. The executables are put in $HOME/.cabal/bin, so it is a good idea to put a line in your .bash_profile to add that directory to you path:


GF uses haskeline, which depends some non-Haskell libraries that won't be installed automatically by cabal, so you need to install them manually. Here is one way to do this:

Older releases

Installing from the latest developer code

The first time:

    darcs get --lazy GF
    cd GF
    cabal install


    cd GF
    darcs pull -a
    cabal install

The above notes for installing from source apply also in this case.