5.3 KiB
title, date
| title | date |
|---|---|
| Grammatical Framework Download and Installation | 8 August 2025 |
GF 3.12 was released on 8 August 2025.
What's new? See the release notes.
Note: GF core and the RGL
The following instructions explain how to install GF core, i.e. the compiler, shell and run-time systems. Obtaining the Resource Grammar Library (RGL) is done separately; see the section at the bottom of this page.
Installing from a binary package
Binary packages are available for Debian/Ubuntu, macOS, and Windows and include:
- GF shell and grammar compiler
gf -servermode- C run-time system
- Python bindings to the C run-time system
Debian/Ubuntu
The package targets Ubuntu 24.04 (Noble). To install it, use:
sudo apt install ./gf-3.12-ubuntu-24.04.deb
macOS
To install the package, just double-click it and follow the installer instructions.
The packages should work on at least Catalina and Big Sur.
Windows
To install the package:
- unpack it anywhere and take note of the full path to the folder containing the
.exefile. - add it to the
PATHenvironment variable
For more information, see Using GF on Windows (latest updated for Windows 10).
Installing from Hackage
Instructions applicable for macOS, Linux, and WSL2 on Windows.
GF is on Hackage, so under normal circumstances the procedure is fairly simple:
cabal update
cabal install gf-3.12
Notes
GHC version
The GF source code is known to be compilable with GHC versions 7.10 through to 9.6.7.
Obtaining Haskell
There are various ways of obtaining Haskell, including:
- ghcup
- Install from https://www.haskell.org/ghcup/
ghcup install ghc 9.6.7ghcup set ghc 9.6.7
- Stack: https://haskellstack.org/
Installation location
The above steps install GF for a single user.
The executables are put in $HOME/.cabal/bin (or on macOS in $HOME/Library/Haskell/bin),
so you might want to add this directory to your path (in .bash_profile or similar):
PATH=$HOME/.cabal/bin:$PATH
Haskeline
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:
- On Ubuntu:
sudo apt-get install libghc-haskeline-dev - On Fedora:
sudo dnf install ghc-haskeline-devel
Installing from source code
Obtaining
To obtain the source code for the release, download it from GitHub.
Alternatively, to obtain the latest version of the source code:
- If you haven't already, clone the repository with:
git clone https://github.com/GrammaticalFramework/gf-core.git
- If you've already cloned the repository previously, update with:
git pull
Installing
You can then install with:
cabal install
or, if you're a Stack user:
stack install
For more info on working with the GF source code, see the GF Developers Guide.
Installing the Python bindings from PyPI
The Python library is available on PyPI as pgf, so it can be installed using:
pip install pgf
If this doesn't work, you will need to install the C runtime manually; see the instructions here.
Installing the RGL from a binary release
Binary releases of the RGL are made available on GitHub. In general the steps to follow are:
- Download a binary release and extract it somewhere on your system.
- Set the environment variable
GF_LIB_PATHto point to wherever you extracted the RGL.
For more information, see Using GF on Windows (latest updated for Windows 10).
Installing the RGL from source
To compile the RGL, you will need to have GF already installed and in your path.
- Obtain the RGL source code, either by:
- cloning with
git clone https://github.com/GrammaticalFramework/gf-rgl.git - downloading a source archive here
- Run
makein the source code folder.
For more options, see the RGL README.
Older releases
- GF 3.11 (July 2021)
- GF 3.10 (December 2018)
- GF 3.9 (August 2017)
- GF 3.8 (June 2016)
- GF 3.7.1 (October 2015)
- GF 3.7 (June 2015)
- GF 3.6 (June 2014)
- GF 3.5 (August 2013)
- GF 3.4 (January 2013)
- GF 3.3.3 (March 2012)
- GF 3.3 (October 2011)
- GF 3.2.9 source-only snapshot (September 2011)
- GF 3.2 (December 2010)
- GF 3.1.6 (April 2010)