SPACK install of FLEUR

Another path to get working FLEUR installation is the use of the SPACK package manager.

This is a preferred installation method if

  • You have spack support already on your machine or
  • You can use one of our predefined environments.

spack can also be used of course in all other cases, but be aware that you should spend some time to make sure spack uses some preinstalled libraries instead of compiling everything from scratch. In any case, please consult the spack documentation.

If you do not have spack installed, start with cloning it. This is a large repo and will take some time

git clone https://github.com/spack/spack.git

Whenever you use spack, you should first setup your shell environment.

. spack/share/spack/setup-env.sh

While in principle, you can now install FLEUR by using the recipe included in the default spack repo, this might not always be up-to-date. In addition, we provide some environments for spack that are tuned to specific computers. You might want to use these directly or use them as a basis to adjust to your situation. To use the up-to date version of the recipes and the environments we can use the configure script of FLEUR again. So we clone the fleur repo as well

git clone https://iffgit.fz-juelich.de/fleur/fleur

Now we use the fleur configure script with the -spack option to choose an environment (Here we should choose the generic environment.)

As the script will try to read from the terminal, you should execute it in an explicit terminal, not in the notebook here.

In the terminal do

. spack/share/spack/setup-env.sh

fleur/configure.sh -spack

After you installed the environment, you can do a

spack env activate NAME_OF_YOUR_ENVIRONMENT

and a

spack install

to install FLEUR. (This will take a long time because many dependencies will be built as well). You can also first only do a

spack spec

To see all dependencies, spack will build.

If you want to use FLEUR, you should do a

spack load fleur .

Learn more

The biggest advantage of using spack to install FLEUR is the reproducibility of the build process it provides. To understand all features of spack you should read its documentation at

  • https://spack.io/about