Compiling Yambo 5.2.0 Piz Daint

Having trouble compiling the Yambo source? Using an unusual architecture? Problems with the "configure" script? Problems in GPU architectures? This is the place to look.

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
Post Reply
Posts: 1
Joined: Fri Dec 01, 2023 9:17 am

Compiling Yambo 5.2.0 Piz Daint

Post by aaortega » Fri Dec 01, 2023 11:36 am

Compiling Yambo in Piz daint,

Dear developers, I (and the Service Desk from Piz Daint) have been trying to compile Yambo 5.2.0 with no success,

This is what we have

Code: Select all

module load daint-gpu
module load libxc/5.1.7-CrayGNU-21.09
module load cray-hdf5-parallel/
module load cray-netcdf-hdf5parallel/
module load cray-fftw/
module load cray-libsci/20.09.1
./configure FC=ftn CC=cc CXX=CC MPICC=cc FCFLAGS="-fopenmp"  FPP="ftn -E" --enable-open-mp --enable-cuda="cuda11.0,cc60" \
            --with-libxc-path="$EBROOTLIBXC" --with-libxc-includedir="$EBROOTLIBXC/include" --with-libxc-libdir="$EBROOTLIBXC/lib" \
            --with-hdf5-includedir="/opt/cray/pe/hdf5-parallel/" --with-hdf5-libdir="/opt/cray/pe/hdf5-parallel/" \
            --with-netcdf-includedir="/opt/cray/pe/netcdf-hdf5parallel/" --with-netcdf-libdir="/opt/cray/pe/netcdf-hdf5parallel/" \
            --with-netcdff-includedir="/opt/cray/pe/netcdf-hdf5parallel/" --with-netcdff-libdir="/opt/cray/pe/netcdf-hdf5parallel/"
            #--with-fft-includedir="/opt/cray/pe/fftw/" --with-fft-libdir="$FFTW_DIR"
make yambo -j 8
I've given this a couple more tries and got rid of a few issues:

The `--with-blas/lapack/scalapack-libs` configuration lines are not needed, the ftn and cc/CC compiler wrappers automatically add these
There were some hard-coded Fortran flags that only work with the intel compiler, e.g. `-fqopenmp` instead of `-fopenmp` for gfortran
The default Fortran preprocessor is guessed as `cpp -P -E`, which does not work. FPP="ftn -E" seems to work
With these changes, configure runs through. I'm not able to compile the code though, I'm getting:

Code: Select all

daint101:/scratch/snx3000/sebkelle/yambo/yambo-5.2.0$ make all
\t[lib/slatec] slatec (setup)
\t[lib/math77] math77 (setup)
\t[lib/local] local (setup)
\t[lib/qe_pseudo] qe_pseudo (setup)
make[4]: *** [/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/config/mk/local/ kind.o] Error 1
qe_pseudo build failed
In the log file at "log/compile_qe_pseudo.log" I can see that the Yambo configure setup injects compiler flags that are invalid, e.g.:

Code: Select all

ftn -c -g -O  -Mnomain    -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include/headers/common -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include/headers/parser -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/yambo/Ydriver/include -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include/driver -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include/version -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/external/unknown/ftn/include/    -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/external/unknown/ftn/single/include -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/external/unknown/ftn/single/include  -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/external/unknown/ftn/include -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/external/unknown/ftn/include/   -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/lib/yambo/Ydriver/include -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include/driver -I/scratch/snx3000/sebkelle/yambo/yambo-5.2.0/include/version kind.f90
ftn-1221 crayftn: WARNING in command line
  The -O command line option has been specified with no arguments.  It will be ignored.
ftn-78 crayftn: ERROR in command line
  The -M option has an invalid argument, "nomain".
I was wondering if you could give us some feedback ?


Andres Ortega-Guerrero

Post Reply