From 098541dda21cc10d6a4062e8aa1617d75b10bdd3 Mon Sep 17 00:00:00 2001 From: Jacob Tan En Date: Wed, 9 Jun 2021 18:31:16 +0800 Subject: [PATCH] Update index-3.11.md `Cabal install` is fragile and can fail if the GHC on path is of an incompatible version. Use ghcup to use a GHC version that is known to work. --- download/index-3.11.md | 23 +++++++---------------- 1 file changed, 7 insertions(+), 16 deletions(-) diff --git a/download/index-3.11.md b/download/index-3.11.md index c128e77ce..0ebf0f031 100644 --- a/download/index-3.11.md +++ b/download/index-3.11.md @@ -49,15 +49,17 @@ You will probably need to update the `PATH` environment variable to include your For more information, see [Using GF on Windows](https://www.grammaticalframework.org/~inari/gf-windows.html) (latest updated for Windows 10). -## Installing the latest release from source +## Installing the latest Hackage release (macOS, Linux, and WSL2 on Windows) [GF is on Hackage](http://hackage.haskell.org/package/gf), so under normal circumstances the procedure is fairly simple: -1. Install a recent version of the [Haskell Platform](http://hackage.haskell.org/platform) (see note below) -2. `cabal update` -3. On Linux: install some C libraries from your Linux distribution (see note below) -4. `cabal install gf` +1. Install ghcup https://www.haskell.org/ghcup/ +2. `ghcup install ghc 8.10.4` +3. `ghcup set ghc 8.10.4` +4. `cabal update` +5. On Linux: install some C libraries from your Linux distribution (see note below) +6. `cabal install gf-3.11` You can also download the source code release from [GitHub](https://github.com/GrammaticalFramework/gf-core/releases), and follow the instructions below under **Installing from the latest developer source code**. @@ -74,17 +76,6 @@ so you might want to add this directory to your path (in `.bash_profile` or simi PATH=$HOME/.cabal/bin:$PATH ``` -**Build tools** - -In order to compile GF you need the build tools **Alex** and **Happy**. -These can be installed via Cabal, e.g.: - -``` -cabal install alex happy -``` - -or obtained by other means, depending on your OS. - **Haskeline** GF uses [`haskeline`](http://hackage.haskell.org/package/haskeline), which