Getting the DFT++ source code
- Before starting make sure you have the necessary outside libraries
- The preferred way is through the darcs repository. We strongly
encourage you to use this approach since you will not only get the
latest bugfixes but it will allow you to easily contribute back any
fixes to bugs you may find. Here is how to get started:
- Obtain darcs, either from your
OS distribution, by putting a statically linked binary in your
path, or by compiling darcs from source.
- Download the latest version of dft:
darcs get --partial
http://dft.physics.cornell.edu/dft new_dft_dir
sh autogen.sh in the newly created directory in
order to generate the configure- and make- files. You need a recent
version of the autoconf/automake tools. Older versions of these tools
sometimes trigger errors, but in almost all cases running by hand the
4 commands in autogen.sh does the trick.
-
./congfigure (use ./configure --help to
see the various options for mpi, blas, etc.)
-
make will create the executable dft in
the src/ subdirectory.
-
darcs pull to update your repository with the latest
changes (after say few days).
- To contribute your improvements
darcs record --no-test, will interactively prompt you
to name a set of changes.
darcs send will email your changes to the dft-users
mailing list in a form that we can easily apply to the code. If your
system does not have configured email use darcs send -o
FILENAME to create a patch file and email it to us as an
attachment.
- Alternatively you can download the tarball from
the latest release. In this case you do not need the automake/autoconf
tools installed, but you still need FFTW.
- Download the latest tarball from here.
- unzip/untar the code
tar -xzvf dft-X.X.X.tar.gz
or
gunzip dft-X.X.X.tar.gz
tar -xvf dft-X.X.X.tar
- After going in the newly created directory
./congfigure (use --help to see the various options for
mpi, blas, etc.)
-
make will create the executable dft in
the src/ directory.
- To see dft in action
make check will run in the subdirectory
tests a set of simple examples that we use to test the
code integrity.
make in the subdirectory bench will run
a set of more realistic examples.