To make and install GF (Updated for version 2.4).

1. Unpack GF and go to the source directory (the place where this 
   INSTALL file is - so you have probably done this already!)

     tar xvfz GF-2.4.tgz
     cd GF-2.4/src

3. Make sure you have GHC (Glasgow Haskell Compiler), version 6.4 or later.
   In Windows, you also need Cygwin.

     ghc --version

4. If you are building the darcs version, run autoconf (in src/):

     autoconf

5. Run configure

     ./configure

   If you want to install the GF somewhere other than /usr/local, use
   the --prefix flag. E.g.

     ./configure --prefix=/usr

   To compile on Chalmers Solaris systems using VCS, use this configuration:

     ./configure CPPFLAGS="`lib__readline -I` `lib__ncurses -I`" LDFLAGS="`lib__readline -l` `lib__ncurses -l`"

   If you experience problems with readline, try:

   ./configure --with-readline=no
   
   You may need to run "make clean" after ./configure when you change the 
   readline setting.

6. Compile with GNU make:

     make

   or

     gmake

   (if your system has a proprietary make)

   The binary is sent to the file GF/bin/gf .

7. Move files to their right places:

     make install

8. To run GF, the following environment variables must be set:

     GFHOME         the GF directory,         e.g., "$HOME/project/GF-2.4"
     GF_LIB_PATH    the GF library directory, e.g,, "$HOME/project/GF-2.4/lib"

   (Usually, you do this in ~/.login, if your shell is any *csh,
    or in ~/.profile, if your shell is either of sh, ksh, zsh or bash.
    Afterwards, you have to start a login shell to have the settings available.)

9. For a quick test: 
   Start gf, load a grammar and parse a string:

     cd GF/grammars/basic
     gf English.gf

     -- when gf has started and shows the prompt >:
     > p "every number is even or odd"
     -- this is the response from GF:
     PredA1 (Every Number) (DisjA1 Even Odd)

10. If you want to run the Java GUI, go back to $GFHOME/src directory
    and also do

     make install-java

   Test the GUI with some grammars:

     cd ../examples/letter
     gf <mkLetter.gfs
     jgf Letter.gfcm

   When the window opens, push the Random button. 

Author: Aarne Ranta, Bjrn Bringert 8/11/2004 -- 26/01/2006

