jhc is maintained via the Darcs revision control system. The darcs repository is located at http://repetae.net/repos/jhc, you can also browse the repository via darcsweb.
If you simply wish to use jhc, it is easier to build from the distribution tarball, as described on the Building Page. If you are interested in developing or modifying jhc itself, then building from darcs as described on this page is recommended.
In order to build from the darcs repo, you need the following things installed:
* GHC 6.8.2 or better
* A recent version of DrIFT
* pandoc if you wish to build documentation
* graphviz if you wish to create code motion graphs
* a working 'perl' install for various sundry tasks
* the happy haskell parser generator
* for ghc 6.8 you need the binary, zlib, and utf8-string libraries installed. ghc 6.10 may require more depending on how it is installed.
First you must install darcs, there are a couple projects you need to pull in order to compile jhc, the following should produce a working tree:
darcs get http://repetae.net/repos/jhc
cd jhc
autoreconf -i
./configure
make darcs-fetch
Now you can begin to build jhc, in order to do so, switch to the jhc directory and do:
make jhc
after jhc has finished building, you can create the standard libraries via
make libs
jhc can now be tested via
make HelloWorld
however, during development, it is sometimes easier to use the raw haskell source of the libraries directly. in order to do that, you can run jhc with the following options when run in the development tree.
./jhc --noauto -ilib/base -ilib/jhc -ilib/haskell98 examples/HelloWorld.hs -o helloworld