- compiler : gcc version 12.2.1 20221121 (Red Hat 12.2.1-7) (GCC)
- arch : AMD/genoa x86_64
- parallel version
- Yambo version : 5.2.4
I'm opening this topic just to inform developers, and in particular those in charge of the configure file, that I'm having a problem installing yambo version 5.2.4 with spack. I think the problem comes from the configure file. Here's the compile command I use after loading modules making external libraries (fftw, hdf5, netcdf,blas,lapack) accessible to yambo :
./configure --enable-open-mp --enable-mpi --prefix=/............/yambo/5.2. 4 --with-blas-libs=“-L$CRAY_PE_LIBSCI_PREFIX/lib -lsci_gnu_121 -lsci_gnu_121” --with-lapack-libs=“-L$CRAY_PE_LIBSCI_PREFIX/lib -lsci_gnu_121 -lsci_gnu_121” --with-hdf5-path=“$HDF5_ROOT” - -with-netcdf-path=“$NETCDF_C_ROOT” --with-netcdff-path=“$NETCDF_FORTRAN_ROOT” --with-fft-path=“$FFTW_ROOT” FFLAGS=“-fallow-argument-mismatch” FCFLAGS="-fallow-argument-mismatch”
The directories for the libraries and include files for its tools (fft, ...etc) are found. However, the creation of the config/setup file is erroneous. There are carriage returns for the lhdf5 and ihdf5 variables, as the lines below show:
lhdf5 =
-L/......./__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_plac/hdf5-1.14.3-gcc-12.1.genoa-q7wq/lib -lhdf5_fortran -lhdf5 -I/opt/cray/pe/mpich/8.1.28/ofi/gnu/10.3/include -I/opt/cray/pe/mpich/8.1.28/ofi/gnu/10.3/include -L/opt/cray/pe/mpich/8.1.28/ofi/gnu/10.3/lib -lmpifort_gnu_103 -lmpi_gnu_103
ihdf5 = -I
/......../__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_placeholder__/__spack_path_plac/hdf5-1.14.3-gcc-12.1.genoa-q7wq/include
hdf5_opt = --enable-parallel
hdf5_mode = production
If I modify the config/setup file by removing the carriage returns and use the command: “make main”, the compilation completes and yambo is installed.
But when installing with spack, the config/setup file cannot be modified manually. I can modify the spack recipe via yambo's package.py file, but I think it would be simpler to correct the configure file, or at least the config/setup file creation step. That's why I wanted to send you this information
Regards,
M. Cloirec
Yambo 5.2.4 compilation with spack
Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano, Conor Hogan, Nicola Spallanzani
Forum rules
If you have trouble compiling Yambo, please make sure to list:
(1) the compiler (vendor and release: e.g. intel 10.1)
(2) the architecture (e.g. 64-bit IBM SP5)
(3) if the problems occur compiling in serial/in parallel
(4) the version of Yambo (revision number/major release version)
(5) the relevant compiler error message
If you have trouble compiling Yambo, please make sure to list:
(1) the compiler (vendor and release: e.g. intel 10.1)
(2) the architecture (e.g. 64-bit IBM SP5)
(3) if the problems occur compiling in serial/in parallel
(4) the version of Yambo (revision number/major release version)
(5) the relevant compiler error message
-
- Posts: 3
- Joined: Wed Apr 09, 2025 9:34 am
Re: Yambo 5.2.4 compilation with spack
This seems to be due to the use of the h5pfc and h5fc tools from line 13841 to line 13850 of the configure file.
A solution could be to replace these lines with :
if test -e $h5pfc && test $IO_LIB_VER = “parallel”; then
try_HDF5_LIBS=`$h5pfc -show | awk -F'-L' '{$1=“”; for (i=2; i<=NF;i++) $i=“-L”$i; print $0}'| sed '/^\s*$/d'`
try_hdf5_incdir=`$h5pfc -show | awk -F'-I' '{print $2}' | awk '{print $1}'| sed '/^\s*$/d'`
IO_LIB_VER=“parallel”;
elif test -e $h5fc && test $IO_LIB_VER = “serial”; then
try_HDF5_LIBS=`$h5fc -show | awk -F'-L' '{$1=“”; for (i=2; i<=NF;i++) $i=“-L”$i; print $0}'| sed '/^\s*$/d'`
try_hdf5_incdir=`$h5fc -show | awk -F'-I' '{print $2}' | awk '{print $1}'| sed '/^\s*$/d'`
IO_LIB_VER=“serial”;
enable_hdf5_par_io=“no”;
fi
Regards,
M. Cloirec
A solution could be to replace these lines with :
if test -e $h5pfc && test $IO_LIB_VER = “parallel”; then
try_HDF5_LIBS=`$h5pfc -show | awk -F'-L' '{$1=“”; for (i=2; i<=NF;i++) $i=“-L”$i; print $0}'| sed '/^\s*$/d'`
try_hdf5_incdir=`$h5pfc -show | awk -F'-I' '{print $2}' | awk '{print $1}'| sed '/^\s*$/d'`
IO_LIB_VER=“parallel”;
elif test -e $h5fc && test $IO_LIB_VER = “serial”; then
try_HDF5_LIBS=`$h5fc -show | awk -F'-L' '{$1=“”; for (i=2; i<=NF;i++) $i=“-L”$i; print $0}'| sed '/^\s*$/d'`
try_hdf5_incdir=`$h5fc -show | awk -F'-I' '{print $2}' | awk '{print $1}'| sed '/^\s*$/d'`
IO_LIB_VER=“serial”;
enable_hdf5_par_io=“no”;
fi
Regards,
M. Cloirec
- Nicola Spallanzani
- Posts: 93
- Joined: Thu Nov 21, 2019 10:15 am
Re: Yambo 5.2.4 compilation with spack
Dear M. Cloirec,
please sign your posts with your name and affiliation, this is a rule of the forum, and you can do once for all by filling your user profile.
If you are using spack for the installations you can use my external repo
https://github.com/nicspalla/my-repo
In the Yambo recipe there is the patch to solve the hdf5 issue.
In the README file there are instructions to configure spack.
Let me know if you need more help on spack.
Best regards,
Nicola
please sign your posts with your name and affiliation, this is a rule of the forum, and you can do once for all by filling your user profile.
If you are using spack for the installations you can use my external repo
https://github.com/nicspalla/my-repo
In the Yambo recipe there is the patch to solve the hdf5 issue.
In the README file there are instructions to configure spack.
Let me know if you need more help on spack.
Best regards,
Nicola
Nicola Spallanzani, PhD
S3 Centre, Istituto Nanoscienze CNR and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu
S3 Centre, Istituto Nanoscienze CNR and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu
-
- Posts: 3
- Joined: Wed Apr 09, 2025 9:34 am
Re: Yambo 5.2.4 compilation with spack
Thank you for your feedback, I will follow the information on https://github.com/nicspalla/my-repo
Regards
-------------------
M. Cloirec
CINES - Centre Informatique National de l’Enseignement Supérieur
Montpellier, France
https://www.cines.fr/
Regards
-------------------
M. Cloirec
CINES - Centre Informatique National de l’Enseignement Supérieur
Montpellier, France
https://www.cines.fr/