Configure-5.0

From The Yambo Project
Jump to: navigation, search

General flags

 --enable-keep-objects   Objects are not removed but saved in appropriate
                         directories. Default is yes.
 --enable-keep-src       Keep preprocessed.f90 file. Default is yes.
 --enable-keep-extlibs   Keep downloaded packages as tar.gz . Default is yes.
 --enable-dp             Double-precision build. Default is no.
 --enable-time-profile   Extended timing profile of specific sections.
                         Default is yes.
 --enable-uspp           Enable Ultrasoft PP support
 --enable-memory-profile Extended Memory profile of specific sections
 --enable-msgs-comps     Verbose compilation log
 --enable-options-check  Enable the command line options check in driver.c.
                         Default is yes.
 --enable-debug-flags    Debug flags are set for compilation. Default is no.

Parallelization

 --enable-open-mp        Enable OpenMP support
 --enable-mpi            Enable mpi parallelization . Default is yes.

Linear algebra

 --enable-int-linalg     Force internal linear algebra. Default is no
 --enable-openmp-int-linalg
                         Use openmp internal linear algebra for few selected
                         operations. Default is no
 --enable-slepc-linalg   Enable suport for the diagonalization of BSE using
                         SLEPC. Default is no
 --enable-par-linalg     Use parallel linear algebra. Default is no

FFT

 --enable-internal-fftqe Use internal QE FFT library
 --enable-internal-fftsg Use internal Goedecker FFT library
 --enable-3d-fft         Use 3D FFT

NetCDF and HDF5

 --enable-netcdf-classic Switch to OLD NetCDF classic. Default is no.
 --enable-netcdf-v3      Switch to OLD NETCD v3 format. Default is no.
 --enable-hdf5-compression
                         Activate the HDF5 data compression. Default is no.
 --enable-hdf5-par-io    Activate the HDF5 parallel io. Default is no.
 --enable-netcdf-output  Activate the netcdf copy for some output files.
                         Default is no.
 --enable-hdf5-p2y-support
                         Activate HDF5 support in p2y. Default is no unless
                         parallel HDF5 libs are linked.

Other I/O libraries

 --enable-yaml-output          Activate the YAML output support. Default is
                               no
 --enable-iotk           Activate the IOTK support
 --enable-etsf-io        Activate the ETSF_IO support

GPU support

 --enable-cuda=<opt>     Enable CUDA support. PGI Fortran compiler is needed
 --enable-nvtx=<path>    Enable NVTX support

Optional External Packages:

 --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
 --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
 --with-extlibs-path=<path>
                         Path to the external libs
 --with-editor=<exe>           User-defined editor (none for no editor)
 --with-f90ext=<flags>         Use .<flags> Fortran 90 extension
 --with-mpi-libs=<libs>        Use MPI libraries <libs>
 --with-mpi-path=<path>        Path to the MPI install directory
 --with-mpi-libdir=<path>      Path to the MPI lib directory
 --with-mpi-includedir=<path>  Path to the MPI include directory
 --with-blas-libs=<libs>       Use BLAS libraries <libs>
 --with-lapack-libs=<libs>     Use LAPACK libraries <libs>
 --with-fft-libs=<libs>        Link to FFT libraries
 --with-fft-path=<path>        Path to the FFT install directory
 --with-fft-libdir=<path>      Path to the FFT lib directory
 --with-fft-includedir=<path>  Path to the FFT include directory
 --with-fftsg-fac=<val>        Change default Goedecker FFT cache factor
 --with-slepc-libs=<libs>      Use Slepc libraries <libs>
 --with-slepc-incs=<incs>      Use Slepc includes <incs>
 --with-slepc-path=<path>      Path to the Slepc install directory
 --with-slepc-libdir=<path>    Path to the Slepc lib directory
 --with-slepc-includedir=<path>
                               Path to the Slepc include directory
 --with-petsc-libs=<libs>      Use Petsc libraries <libs>
 --with-petsc-incs=<incs>      Use Petsc includes <incs>
 --with-petsc-path=<path>      Path to the Petsc install directory
 --with-petsc-libdir=<path>    Path to the Petsc lib directory
 --with-petsc-includedir=<path>
                               Path to the Petsc include directory
 --with-blacs-libs=<libs>      Use BLACS libraries <libs>
 --with-scalapack-libs=<libs>  Use SCALAPACK libraries <libs>
 --with-netcdf-libs=<libs>     Use NetCDF libraries <libs>
 --with-netcdf-path=<path>     Path to the NetCDF install directory
 --with-netcdf-libdir=<path>   Path to the NetCDF lib directory
 --with-netcdf-includedir=<path>
                               Path to the NetCDF include directory
 --with-netcdff-libs=<libs>    Use NetCDFF libraries <libs>
 --with-netcdff-path=<path>    Path to the NetCDFF install directory
 --with-netcdff-libdir=<path>  Path to the NetCDFF lib directory
 --with-netcdff-includedir=<path>
                               Path to the NetCDFF include directory
 --with-hdf5-libs=<libs>       Use HDF5 libraries <libs>
 --with-hdf5-path=<path>       Path to the HDF5 install directory
 --with-hdf5-libdir=<path>     Path to the HDF5 lib directory
 --with-hdf5-includedir=<path> Path to the HDF5 include directory
 --with-yaml-libs=<libs>       Use the FUTILE library in <libs>
 --with-yaml-libdir=<path>     Path to the FUTILE lib directory
 --with-yaml-includedir=<path> Path to the FUTILE include directory
 --with-futile-libs=<libs>     Use the FUTILE library in <libs>
 --with-futile-libdir=<path>   Path to the FUTILE lib directory
 --with-futile-includedir=<path>
                               Path to the FUTILE include directory
 --with-iotk-libs=<libs>       Use the IOTK library in <libs>
 --with-iotk-path=<path>       Path to the IOTK install directory
 --with-iotk-libdir=<path>     Path to the IOTK lib directory
 --with-iotk-includedir=<path> Path to the IOTK include directory
 --with-etsf-io-libs=<libs>    Use the ETSF_IO libraries in <libs>
 --with-etsf-io-path=<path>    Path to the ETSF_IO install directory
 --with-etsf-io-libdir=<path>  Path to the ETSF_IO lib directory
 --with-etsf-io-includedir=<path>
                               Path to the ETSF_IO include directory
 --with-libxc-libs=<libs>      Use libxc libraries <libs>
 --with-libxc-path=<path>      Path to libxc install directory
 --with-libxc-libdir=<path>    Path to the libxc lib directory
 --with-libxc-includedir=<path>
                               Path to the libxc include directory

Some influential environment variables:

 CC          C compiler command
 CFLAGS      C compiler flags
 LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
             nonstandard directory <lib dir>
 LIBS        libraries to pass to the linker, e.g. -l<library>
 CPPFLAGS    (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
             you have headers in a nonstandard directory <include dir>
 CPP         C preprocessor
 FC          Fortran compiler command
 FCFLAGS     Fortran compiler flags
 UFLAGS      Unoptimized Fortran flags
 FPP         Fortran preprocessor
 F77         Fortran 77 compiler command
 FFLAGS      Fortran 77 compiler flags
 MPIFC       Parallel Fortran compiler command
 MPIF77      Parallel Fortran 77 compiler command
 MPICC       Parallel C compiler command