Installation of jhc
===================

All versions of jhc are available from the
[Download Directory](http://repetae.net/dist/). The project is
also under darcs revision control however the build process from darcs is
somewhat more involved. For information on getting the source code from darcs
and building it, see the [Development Page](development.shtml).

Building from the tarball
-------------------------

jhc is also distributed via a autoconf/automake style tarball. Building jhc
has the following dependencies, many of them are included with ghc
distributions so run ./configure first and it will report any that are missing.

 * GHC 7.4 or better
 * [binary](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/binary)
 * [zlib](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/zlib)
 * [utf8-string](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/utf8-string)
 * [readline](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/readline)
 * [regex-compat](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/regex-compat)
 * [HsSyck](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/HsSyck)
 * [mtl](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/mtl)
 * [syb](http://hackage.haskell.org/cgi-bin/hackage-scripts/package/syb)

You can get the tarball
at <http://repetae.net/dist/@PACKAGE@-@VERSION@.tar.gz>. In order
to build it, download it into a directory and perform the following

    tar zxvf @PACKAGE@-@VERSION@.tar.gz
    cd @PACKAGE@-@VERSION@
    ./configure && make

then as root run

    make install


A note on libraries
-------------------

All these prepackaged versions of jhc come with prebuilt versions of base,
haskell98, and a few other libraries for use by jhc in addition to the
sourcecode for these libraries. You can rebuild them if you wish simply by
deleting the '.hl' files in your build directory and doing a 'make libs'.
however it is recommended you work with the development darcs tree if you plan
on modifying the base libraries. external libraries may be added to the jhc
build tree by adding an appropriate file in lib/ext/
