Here you will find some general information about how to install yambo and make use of important external libraries. To get yambo working, the following basic steps are necessary:
% tar -xvzf yambo-latest.tar.gz % cd yambo-X.X.X
% ./configure
% make yambo interfaces
% ./bin/yambo Cannot access CORE database (SAVE/*db1 and/or SAVE/*wf)
and that should do it. The executables are stored in yambo-X.X.X/bin, and can be copied from there or linked to.
If you are lucky, the configure script will successfully find the best compiler options. However, some fine-tuning might be necessary on specific platforms. See
./configure --helpfor a large set of options. A list of suggested machine specific options can be found at the Compiling yambo page.
Finally, if you want to slightly modify (or check) the options that will be used by the Makefile generated by the configure script, you can simply edit the yambo-X.X.X/config/setup file (after configuration, of course!)
One of the most useful features of yambo is its ability to carry out all (or most of!) the database I/O using the NetCDF libraries. If NetCDF support is not possible, yambo will handle the database I/O using the native binary Fortran format. Many high-performance architectures already have the NetCDF libraries available, so make sure to check these out first. If not, you will have to download and compile the libraries from the link above. You might find it useful to consult the successful build outputs. Once NetCDF is compiled and installed on your system, you can use the configure script to compile yambo with NetCDF support using
./configure --with-netdf=<NetCDF ROOT DIRECTORY>
The default root directory for NetCDF is /usr/local. Remember to compile the interfaces with NetCDF support as well, so as to create the default databases in this format!
The configure script should hopefully detect FFTW libraries if they are located in your $PATH. Otherwise, you can specify user-defined locations with
./configure --with-fftw=<FFTW LIB DIRECTORY>If you are running on the CINECA CRAY systems, the FFTW library is located in /cineca/prod/lib. Hence, try compiling with:
./configure --with-fftw=/cineca/prod/libOf course, if the linking with FFTW doesn't work, the default Goedecker FFT routines will be used.
To import output from PWscf/Quantum-Espresso, the IOTK libraries (Input/Output ToolKit, bundled with QE versions > 3.0) need to be linked. Provide the path to the IOTK directory in the compiled PWscf source, e.g.:
./configure --with-iotk='/usr/local/src/espresso-3.1.1/iotk'Unfortunately, you might have to compile PWscf yourself to make these libraries available.