Page 1 of 1

Yambo 4.3.2 compilation failed.

Posted: Tue May 14, 2019 2:19 pm
by sebastien.k.umons
Dear all,

I try to compile with intel 2017 compiler the Yambo 4.3.2 with interface with QE 6.4 but the build failed.

Here is my configure command:
./configure CC=icc FC=ifort F77=ifort --with-blas-libs="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core" \
--with-lapack-libs="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core" --with-fft-libs="-mkl" \
--with-scalapack-libs="-lmkl_scalapack_ilp64" --with-blacs-libs="-lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl" \
--with-iotk-path="/opt/sw/arch/manual/q-e/q-e-qe-6.4.1/iotk/src" \
--with-hdf5-path="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.8.19-intel-2017b" \
--with-hdf5-includedir="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.8.19-intel-2017b/include" \
--with-hdf5-libdir="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.8.19-intel-2017b/lib" \
--with-netcdf-path="/opt/cecisw/arch/easybuild/2017b/software/netCDF/4.4.1.1-intel-2017b-HDF5-1.8.19" \
--with-netcdf-libdir="/opt/cecisw/arch/easybuild/2017b/software/netCDF/4.4.1.1-intel-2017b-HDF5-1.8.19/lib64" \
--with-netcdf-includedir="/opt/cecisw/arch/easybuild/2017b/software/netCDF/4.4.1.1-intel-2017b-HDF5-1.8.19/include" \
--with-netcdf-libs="-lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lcurl -lz" \
--with-netcdff-path="/opt/cecisw/arch/easybuild/2017b/software/netCDF-Fortran/4.4.4-intel-2017b-HDF5-1.8.19" \
--with-netcdff-libdir="/opt/cecisw/arch/easybuild/2017b/software/netCDF-Fortran/4.4.4-intel-2017b-HDF5-1.8.19/lib" \
--with-netcdff-includedir="/opt/cecisw/arch/easybuild/2017b/software/netCDF-Fortran/4.4.4-intel-2017b-HDF5-1.8.19/include" \
--with-libxc-path="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b" \
--with-libxc-libdir="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b/lib" \
--with-libxc-includedir="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b/include" \
--enable-open-mp

And finally my last compilation log >>>[Linking p2y]

<<<
make[2]: Entering directory `/opt/sw/arch/manual/yambo/4.3.2/interfaces/p2y'
cd /opt/sw/arch/manual/yambo/4.3.2/interfaces/p2y; /opt/sw/arch/manual/yambo/4.3.2/sbin/moduledep.sh mod_pw_data.o qexml.o qexsd_p2y.o qeh5_module.o qexpt_p2y.o pw_pseudo_read.o mod_p2y.o numrec_kinds.o mod_numerical.o numrec_module.o numrec_locate.o numrec_polint.o numrec_polcof.o numrec_ddpoly.o num_interpolation_module.o pw_struct_module.o pw_basis_module.o pw_wfc_module.o pw_pseudo_module.o pw_atoms_module.o pw_setqf.o qe_pseudo_init.o PP_PWscf_driver.o PP_PWscf_comp.o PP_PWscf_comp_nlcc.o p2y_db1.o p2y_wf.o p2y_i.o > /opt/sw/arch/manual/yambo/4.3.2/interfaces/p2y/make.dep
make[2]: Leaving directory `/opt/sw/arch/manual/yambo/4.3.2/interfaces/p2y'
make[2]: Entering directory `/opt/sw/arch/manual/yambo/4.3.2/interfaces/p2y'
mod_pw_data.F qexml.F qeh5_module.f90(426): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DREAD_F]
CALL H5Dread_f( h5_dataset%id, h5_realdp_type, ptr, ierr, mem_hid, file_hid, H5P_DEFAULT_F )
---------^
qeh5_module.f90(445): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DREAD_F]
CALL H5Dread_f( h5_dataset%id, H5_REALDP_TYPE, ptr, ierr, mem_hid, file_hid, H5P_DEFAULT_F )
---------^
qeh5_module.f90(466): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DREAD_F]
CALL H5Dread_f( h5_dataset%id, H5T_NATIVE_INTEGER , ptr, ierr, mem_hid, file_hid, H5P_DEFAULT_F )
---------^
qeh5_module.f90(510): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
---------^
qeh5_module.f90(530): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
---------^
qeh5_module.f90(549): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
---------^
qeh5_module.f90(569): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
--------^
qeh5_module.f90(590): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
--------^
qeh5_module.f90(610): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, h5_realdp_type, buf , ierr, memspace_,&
---------^
qeh5_module.f90(630): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5T_NATIVE_INTEGER , buf , ierr, memspace_,&
--------^
qeh5_module.f90(651): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5T_NATIVE_INTEGER , buf , ierr, memspace_,&
--------^
qeh5_module.f90(671): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5T_NATIVE_INTEGER , buf , ierr, memspace_,&
---------^
qeh5_module.f90(699): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5AWRITE_F]
call H5Awrite_f (attr_id, string_type, buf, ierr )
--------^
qeh5_module.f90(754): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5AWRITE_F]
CALL H5Awrite_f (attr_id, mem_type, buf , ierr )
----------^
qeh5_module.f90(808): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5AWRITE_F]
CALL H5Awrite_f (attr_id, mem_type, buf , ierr )
----------^
qeh5_module.f90(857): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5AREAD_F]
CALL H5Aread_f( attr_id, mem_type,

I already tried to compile with other settings but for me it's always stop on [Linking p2y]

I already have the bin/yambo !

HDF5 version problem ? Any idea ?

Thanks in advance,
Sébastien.

Re: Yambo 4.3.2 compilation failed.

Posted: Tue May 14, 2019 2:45 pm
by Daniele Varsano
Dear Sébastien,
please include your full name and affiliation in your signature, this is a rule of the forum and you can do once for all by filling the signature in your user profile.
I can see you have multiple definition of netcdf necdff path/lib/includedir, is it a possible source of confusion?
Probably people involved in the p2y interface coding can give you an advice on how to solve the problem.

Best,
Daniele

Re: Yambo 4.3.2 compilation failed.

Posted: Wed May 15, 2019 9:52 am
by sebastien.k.umons
Hi,

I recompiled with your first suggestion and modify the definition of netCDF and I get the same error:

/configure CC=icc FC=ifort F77=ifort --with-blas-libs="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core" --with-lapack-libs="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core" --with-fft-libs="-mkl" --with-scalapack-libs="-lmkl_scalapack_ilp64" --with-blacs-libs="-lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl" --with-iotk-path="/opt/sw/arch/manual/q-e/q-e-qe-6.4.1/iotk/src" --with-hdf5-path="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.8.19-intel-2017b" --with-hdf5-includedir="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.8.19-intel-2017b/include" --with-hdf5-libdir="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.8.19-intel-2017b/lib" --with-netcdf-libs="-L/opt/cecisw/arch/easybuild/2017b/software/netCDF/4.4.1.1-intel-2017b-HDF5-1.8.19 -lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lcurl -lz" --with-netcdff-path="/opt/cecisw/arch/easybuild/2017b/software/netCDF-Fortran/4.4.4-intel-2017b-HDF5-1.8.19" --with-libxc-path="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b" --with-libxc-libdir="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b/lib" --with-libxc-includedir="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b/include" --enable-open-mp
...
..
ake[2]: Entering directory `/opt/sw/arch/manual/yambo/4.3.2/interfaces/p2y'
mod_pw_data.F qexml.F qeh5_module.f90(426): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DREAD_F]
CALL H5Dread_f( h5_dataset%id, h5_realdp_type, ptr, ierr, mem_hid, file_hid, H5P_DEFAULT_F )
---------^
qeh5_module.f90(445): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DREAD_F]
CALL H5Dread_f( h5_dataset%id, H5_REALDP_TYPE, ptr, ierr, mem_hid, file_hid, H5P_DEFAULT_F )
---------^
qeh5_module.f90(466): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DREAD_F]
CALL H5Dread_f( h5_dataset%id, H5T_NATIVE_INTEGER , ptr, ierr, mem_hid, file_hid, H5P_DEFAULT_F )
---------^
qeh5_module.f90(510): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
---------^
qeh5_module.f90(530): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
---------^
qeh5_module.f90(549): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
---------^
qeh5_module.f90(569): error #6285: There is no matching specific subroutine for this generic subroutine call. [H5DWRITE_F]
CALL H5Dwrite_f ( h5_dataset%id, H5_REALDP_TYPE, buf , ierr, memspace_,&
--------^

Thanks in advance,
Sébastien.

Re: Yambo 4.3.2 compilation failed.

Posted: Wed May 15, 2019 11:08 am
by andrea.ferretti
Dear Sébastien,

some compilation issues may arise with HDF5 if the F2003 interfaces are not activated.
This is also compatible with the fact that yambo compiles, while p2y (the one using such interfaces) does not.

Until HDF5 v1.8.x you have to ask for both fortran and fortran-2003 interfaces at configuration time.
From HDF5-1.10.x on, I think that the fortran bindings automatically contain also F2003 interfaces
(so, the problem does not show up any longer).

if you don't have access to already-compiled libraries with this requirements, just let yambo compile
netcdf and hdf5 for you (drop the corresponding flags from your yambo configuration script)

hope it helps
Andrea

Re: Yambo 4.3.2 compilation failed.

Posted: Wed May 15, 2019 3:02 pm
by sebastien.k.umons
HI,

First Thanks to Andrea for your suggestions !!!

I finally completed successfully the Yambo 4.3.3 code compilation by replacing the HDF5 version 1.8.9 by 1.10.1 and configure with the following lines:

./configure CC=icc FC=ifort F77=ifort --with-blas-libs="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core" \
--with-lapack-libs="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core" --with-fft-libs="-mkl" \
--with-scalapack-libs="-lmkl_scalapack_ilp64" --with-blacs-libs="-lmkl_blacs_intelmpi_ilp64 -liomp5 -lpthread -lm -ldl" \
--with-iotk-path="/opt/sw/arch/manual/q-e/q-e-qe-6.4.1/iotk/src" \
--with-hdf5-path="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.10.1-intel-2017b" \
--with-hdf5-includedir="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.10.1-intel-2017b/include" \
--with-hdf5-libdir="/opt/cecisw/arch/easybuild/2017b/software/HDF5/1.10.1-intel-2017b/lib" \
--with-netcdf-libs="-L/opt/cecisw/arch/easybuild/2017b/software/netCDF/4.4.1.1-intel-2017b/lib64 -lnetcdff -lnetcdf -lhdf5_hl -lhdf5 -lcurl -lz" \
--with-netcdff-path="/opt/cecisw/arch/easybuild/2017b/software/netCDF-Fortran/4.4.4-intel-2017b" \
--with-libxc-path="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b" \
--with-libxc-libdir="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b/lib" \
--with-libxc-includedir="/opt/cecisw/arch/easybuild/2017b/software/libxc/2.2.3-intel-2017b/include" \
--enable-open-mp

To be tested now by my users...

Regards,
Sébastien.

Re: Yambo 4.3.2 compilation failed.

Posted: Wed May 15, 2019 3:10 pm
by Daniele Varsano
Dear Sébastien,
I'm glad to know the problem is solved!

Regards,
Daniele