GF Logo

Grammatical Framework Download and Installation

GF 3.4 was released on 31 January 2013.

What's new? See the Release notes.

Binary packages

Platform Download How to install
MacOS X gf-3.4-bin-intel-mac.tar.gz sudo tar -C /usr/local -zxf gf-3.4-bin-intel-mac.tar.gz
Fedora (32-bit) Fedora RPMs sudo rpm -i ...
Ubuntu (32-bit) gf_3.4-1_i386.deb sudo dpkg -i gf_3.4-1_i386.deb
Ubuntu (64-bit) gf_3.4-1_amd64.deb sudo dpkg -i gf_3.4-1_amd64.deb
Windows gf-3.4-bin-windows.zip -

Notes

The .deb packages work on Ubuntu 12.04, 12.10 and 13.04.

The MacOS tar package works on 10.6 (Leopard), 10.7 (Lion) and 10.8 (Mountain Lion).

The MacOS and Linux .tar.gz 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.4/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 version 2012.4.0.0 (see notes 2&3 below)
  2. cabal update
  3. On Linux: install some C libraries from your Linux distribution (see note 1 below)
  4. cabal install gf

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

Notes

The above steps installs GF for a single user. The executables are put in $HOME/.cabal/bin (or, with recent versions of the Haskell platform on Mac OS X, in $HOME/Library/Haskell/bin), so it is a good idea to put a line in your .bash_profile to add that directory to you path:

    PATH=$HOME/.cabal/bin:$PATH

or

    PATH=$HOME/Library/Haskell/bin:$PATH

Note 1. GF uses haskeline, which on Linux depends on some non-Haskell libraries that won't be installed automatically by cabal, and therefore need to be installed manually. Here is one way to do this:

Note 2. GF 3.4 does not compile with the most recent versions of GHC (>=7.6). We recommend using GHC 7.4 (which is part of the Haskell Platform 2012.4.0.0). Older versions of GHC (6.12 and 7.0) still works for the most part. (For example, there is a issue with error reporting in gf -server when compiled with GHC 7.0.)

Note 3. The Haskell Platform for Mac OS X page states that you need Xcode 3.2 or later, but in fact it appears you need Xcode 3.2.3 or later. If you have Xcode 3.2.2, you can get an error from the linker: ld: unknown option: -no_pie.

Known problems

There seems to be a bug in some versions of Cabal that can cause

    Distribution/Simple/PackageIndex.hs:124:8-13: Assertion failed

if GF is already installed. If you encounter this, you can use ghc-pkg unregister gf to remove the installed version of GF and ghc-pkg list gf to verify that it is gone.

Installing from the latest developer code

The first time:

    darcs get --lazy http://www.grammaticalframework.org/ GF
    cd GF
    cabal install

Subsequently:

    cd GF
    darcs pull -a
    cabal install

Alternatively, you can get the code from the GF GitHub mirror, which is updated nightly.

The above notes for installing from source apply also in these cases. For more info on working with the GF source code, see the GF Developers Guide.

Older releases