This is an old revision of the document!
Table of Contents
Building BigDFT
To link ABINIT with BigDFT, BigDFT must be compiled as a library.
Building dependencies
Before compiling, one should compile or provide its dependencies :
- libXC ;
- libYAML ;
- linear algebra (Lapack and Blas or equivalents) ;
- a subset of ABINIT called later on libABINIT.
libXC, libYAML and the linear algebra are official packages provided by upstream. Refer to the different project pages for compilation indications.
To compile libABINIT, download it from abinit.org. It works with the Autotools. So configure it with :
./configure FC=mpif90 --with-libxc-incs="-I/path/to/libXC/install/includes" --with-libxc-libs="-L/path/to/libXC/install/lib -lxcf90 -lxc"
Mind that it depends on libXC itself that should be compiled before.
Building BigDFT as a library
BigDFT is using the Autotools. One can download it from abinit.org. To configure it, one needs to provide access to all dependencies. Besides, one should disable the building of binaries and of Python bindings :
./configure FC=mpif90 --with-libxc-incs="-I/path/to/libXC/install/includes" --with-libxc-libs="-L/path/to/libXC/install/lib -lxcf90 -lxc" --with-libabinit-incs="-I/path/to/libABINIT/install/includes" --with-libabinit-libs="-L/path/to/libABINIT/install/lib -labinit" --disable-binaries --disable-bindings --without-gobject --enable-libbigdft
Linking everything into ABINIT
Add bigdft to the dft flavor in ABINIT configuration :
–with-dft-flavor=bigdft+…