Version 1 (modified by kowey, 8 years ago)

moved from front page

Installing GenI

GenI can be installed either with or without a GUI. We strongly recommend doing the installation in two phases, first without the GUI and second with. The GUI can be a bit tricky to install, so this two-phase approach should at least get you up and running with a console version fairly quickly.

Step 1: Install the non-graphical interface

  1. Install GHC 6.8.3 binary from GHC site (Eric uses GHC 6.10; also, does the Haskell Platform work?)
  2. Install cabal-install
  3. cabal update
  4. cabal install cabal-install
  5. cabal install GenI
  6. make sure ${HOME}/.cabal/bin is in your path
  7. make sure it works
    • geni --unit-test
    • geni --help for more details
    • Either retrieve the GenI tarball from hackage or darcs get the latest source and...
    • geni -m examples/ej/macros -l examples/ej/lexicon -s examples/ej/suite

The instructions above assume you want the latest stable version of GenI. If you want to install the darcs version, instead of executing cabal install GenI, you can do cd GenI; cabal install

Step 2: Install with GUI

Warning, this part can be a little hairy because of the wxHaskell installation process.

You can also customize this GenI_installation_script?.

  1. Please make sure you can install GenI without the GUI first.
    • If you do not succeed at installing without the GUI, stop and ask for help!
    • Doing so will help us to refine our install instructions, and most importantly save you a lot of time!
  2. Install graphviz
  3. Install wxWidgets 2.8
    # easy way: ubuntu 9.04 (Jaunty)
    sudo aptitude install libwxgtk2.8-dev libglut-dev
    # NB: not sure if the libglut-dev is really necessary
    # hard way: elsewhere
    ./configure --enable-unicode
    make install
  4. Install wxcore by hand
  5. cabal install GenI --flags=gui
  6. On MacOS X:
    • cd ~/.cabal/bin; macosx-app geni
    • make sure ${HOME}/.cabal/bin/ is in your path, before ${HOME}/.cabal/bin
    • Contact us on the MailingList? if you need extra help.