## Installation

You have two ways of getting the most recent source code:

### using [darcs](http://darcs.net)

This is useful if you want to modify the code (because everything is
version-controlled) and also if you want to maintain your version
up-to-date.

~~~bash
darcs get http://gerris.dalembert.upmc.fr/darcs/basilisk
~~~

If later you want to update the source code, you just need to do

~~~bash
cd basilisk
darcs pull
~~~

and recompile.

### using a tarball

If you don't have darcs, you can use this instead.

~~~bash
wget http://gerris.dalembert.upmc.fr/darcs/basilisk/basilisk.tar.gz
tar xzf basilisk.tar.gz
~~~

### Compilation

For compilation, the only requirement is a C99-compliant compiler.

If you are using gcc on a UNIX-like system, this should work:

~~~bash
cd basilisk/src
export BASILISK=$PWD
export PATH=$PATH:$PWD
ln -s config.gcc config
make
~~~

You should also add the two `export` commands above to your
`$HOME/.bashrc` file.

If you are using another system/compiler, find a config file which
looks close to yours, then try...

~~~bash
cd basilisk/src
ls config.*
cp config.[your pick] config
make
~~~

...before creating your own (also consider sharing your config file).

## Useful additional packages

- gnuplot (> 4.2)
- ffmpeg
- smpeg-plaympeg
- graphiz
- valgrind

and also
[gprof2dot](http://code.google.com/p/jrfonseca/wiki/Gprof2Dot). On a
Debian-based system (Debian, Ubuntu etc...), you just need to do

~~~bash
sudo apt-get install gnuplot ffmpeg smpeg-plaympeg graphiz valgrind
~~~


## Getting started

~~~bash
cd basilisk/src/examples
~~~

and read the [README](examples/README) file.

## Running the test suite

~~~bash
cd test
make
~~~

## Notes

* [Trick to turn off 'extended
  precision'](http://www.network-theory.co.uk/docs/gccintro/gccintro_70.html)
  on 32-bits Intel systems
