yambo compilation with slepc error
Posted: Tue May 14, 2024 7:32 pm
Hello, we are trying to recompile Yambo with the SLEPC solver for BSE since our system is too heavy for full diagonalization. We were running into an issue with the LibXC library (similar issue as viewtopic.php?t=2649), we applied the patch specified therein and then tried to recompile yambo with the following commands:
./configure \
--enable-open-mp \
--enable-msgs-comps \
--enable-time-profile \
--enable-memory-profile \
--with-libxc-path=/storage/software/libxc \
--with-blas-libs="-L/lib/intel64 -Wl,--no-as-needed -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl" \
--enable-slepc-linalg \
--with-lapack-libs="-L/lib/intel64 -Wl,--no-as-needed -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl" \
FC=gfortran CC=gcc F77=gfortran CPP="gcc -E"
make -j4 core
config.log attached below. Then we ran into the following issue:
if test -d slepc-3.14.2 ; then \
unset PETSC_DIR; \
unset PETSC_ARCH; \
cd slepc-3.14.2; \
PETSC_DIR=/storage/software/yambo/lib/external/gfortran/mpifort/single \
SLEPC_DIR=/storage/software/yambo/lib/slepc/slepc-3.14.2 \
python3 ./configure --prefix="/storage/software/yambo/lib/external/gfortran/mpifort/single" ; \
fi
Checking environment...
ERROR: You are requesting a prefix install but the arch directory /storage/software/yambo/lib/slepc/slepc-3.14.2/installed-arch-linux2-c-debug-complex already exists and may contain files from previous builds; consider adding option --with-clean
ERROR: See "installed-arch-linux2-c-debug-complex/lib/slepc/conf/configure.log" file for details
make[4]: * [Makefile:34: configure-stamp] Error 1
make[3]: * [config/mk/global/actions/compile_external_libraries.mk:38: slepc] Error 2
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/qe_pseudo] qe_pseudo (checking work to be done)
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/slatec] slatec (checking work to be done)
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/math77] math77 (checking work to be done)
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/local] local (checking work to be done)
[lib/yambo/driver/src/interface] interface (checking work to be done)
[lib/yambo/driver/src/main] main (checking work to be done)
[lib/yambo/driver/src/options] options (checking work to be done)
make[2]: * No rule to make target 'lib'. Stop.
make[1]: * [config/mk/global/actions/compile_yambo.mk:38: yambo] Error 2
yambo build failed
I am attaching the config log for your reference. Kindly look into it once.
./configure \
--enable-open-mp \
--enable-msgs-comps \
--enable-time-profile \
--enable-memory-profile \
--with-libxc-path=/storage/software/libxc \
--with-blas-libs="-L/lib/intel64 -Wl,--no-as-needed -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl" \
--enable-slepc-linalg \
--with-lapack-libs="-L/lib/intel64 -Wl,--no-as-needed -lmkl_gf_lp64 -lmkl_gnu_thread -lmkl_core -lgomp -lpthread -lm -ldl" \
FC=gfortran CC=gcc F77=gfortran CPP="gcc -E"
make -j4 core
config.log attached below. Then we ran into the following issue:
if test -d slepc-3.14.2 ; then \
unset PETSC_DIR; \
unset PETSC_ARCH; \
cd slepc-3.14.2; \
PETSC_DIR=/storage/software/yambo/lib/external/gfortran/mpifort/single \
SLEPC_DIR=/storage/software/yambo/lib/slepc/slepc-3.14.2 \
python3 ./configure --prefix="/storage/software/yambo/lib/external/gfortran/mpifort/single" ; \
fi
Checking environment...
ERROR: You are requesting a prefix install but the arch directory /storage/software/yambo/lib/slepc/slepc-3.14.2/installed-arch-linux2-c-debug-complex already exists and may contain files from previous builds; consider adding option --with-clean
ERROR: See "installed-arch-linux2-c-debug-complex/lib/slepc/conf/configure.log" file for details
make[4]: * [Makefile:34: configure-stamp] Error 1
make[3]: * [config/mk/global/actions/compile_external_libraries.mk:38: slepc] Error 2
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
make[2]: warning: -j4 forced in submake: resetting jobserver mode.
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/qe_pseudo] qe_pseudo (checking work to be done)
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/slatec] slatec (checking work to be done)
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/math77] math77 (checking work to be done)
make[3]: warning: -j4 forced in submake: resetting jobserver mode.
[lib/local] local (checking work to be done)
[lib/yambo/driver/src/interface] interface (checking work to be done)
[lib/yambo/driver/src/main] main (checking work to be done)
[lib/yambo/driver/src/options] options (checking work to be done)
make[2]: * No rule to make target 'lib'. Stop.
make[1]: * [config/mk/global/actions/compile_yambo.mk:38: yambo] Error 2
yambo build failed
I am attaching the config log for your reference. Kindly look into it once.