[QE-users] Error compiling qe5.1 linked to libbeef-v0.1.1, “Nonexistent include directory .. [-Wmissing-include-dirs]”
Delgado DelgadoJorge
delgadodelgado.jorge at aist.go.jp
Wed Dec 25 10:29:07 CET 2019
Dear all,
I’m having some issues when trying to compile qe5.1 (patched for BEEF-vdW) with libbeef library (v.0.1.1). Although both, qe and libbeef are quite old versions, that pair was implemented in a recent paper I’m trying to reproduce.
The environment I’m working on is the following:
OS: Ubuntu v.18.04.1
Compiller: gcc, GNU Fortran (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
The whole installation procedure I’ve tested so far is described in:
https://suncat.stanford.edu/facilities/software (some outdated code lines, e.g. svn..); and
https://github.com/vossjo/ase-espresso/wiki
First of all, I installed the libbeef library v 0.1.1 as described in:
https://github.com/vossjo/libbeef
Using the compressed file (v 0.1.1) available in:
https://confluence.slac.stanford.edu/display/SUNCAT/BEEF+Functional+Software
The used code lines for the installation of libbeef are the following:
./configure CC=gcc --prefix='/home/libbeef-0.1.1'
make
make install
Note: the installation instructions of readme file indicate to use “./configure CC=icc --prefix=yourbeefpath”. I used CC=gcc instead of icc.
This step proceeds smoothly with nothing else than a warning message (after “make”) I’ve considered harmless so far (please correct me if I should look into it):
warning: ignoring return value of ‘fgets’, declared with attribute warn_unised_result [-Wunused-result]
But still the installation of libbeef is completed and the corresponding lbeef.a file is created in the lib/ directory.
Next, I tried to compile the patched version of qe5.1 (r11289.pybeef - http://www.slac.stanford.edu/~vossj/espresso.5.1.r11289.pybeef.tgz) linking it against libbeef.
For doing so I initially configured as follows:
./configure BEEF_LIBS="-L/home/libbeef-0.1.1/lib -lbeef"
The configuration show the typical “configure: success” message, however the following lines caught my attention:
The following libraries have been found:
BLAS_LIBS=/home/espresso.5.1.r11289.pybeef/espresso/BLAS/blas.a
LAPACK_LIBS=/home/espresso.5.1.r11289.pybeef/espresso/lapack-3.2/lapack.a
FFT_LIBS=
Please check if this is what you expect.
If any libraries are missing, you may specify a list of directories
to search and retry, as follows:
./configure LIBDIRS="list of directories, separated by spaces"
Since libbeef (or lbeef) does not appear together with BLAS_LIBS and LAPACK_LIBS I’m wondering if the configuration didn’t proceed properly. It is noteworthy that when I looked into the config.log file, I found the following lines which are related to lbeef:
beef_libs='-L/home/libbeef/lib -lbeef'
bindir='${exec_prefix}/bin'
blas_libs='/home/espresso.5.1.r11289.pybeef/espresso/BLAS/blas.a'
blas_libs_switch='internal'
blas_line='BLAS_LIBS=/home/espresso.5.1.r11289.pybeef/espresso/BLAS/blas.a'
build='x86_64-unknown-linux-gnu'
After the described configuration, I finally proceeded with the compilation of qe (make pw), however it crashes after showing many warnings and a final error:
test -d bin || mkdir bin
cd install ; make -f extlibs_makefile libiotk
make[1]: Entering directory '/home/espresso.5.1.r11289.pybeef/espresso/install'
if test ! -d ../S3DE; then \
(gzip -dc ../archive/iotk-1.2.beta.tar.gz | (cd ../; tar -xvf -)) ; \
if test -e Makefile_iotk; then \
(cp Makefile_iotk ../S3DE/iotk/src/Makefile); fi; \
if test -e iotk_config.h; then \
(cp iotk_config.h ../S3DE/iotk/include/iotk_config.h); fi; fi
cd ../S3DE/iotk/src; make lib+util;
make[2]: Entering directory '/home/espresso.5.1.r11289.pybeef/espresso/S3DE/iotk/src'
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -c iotk_base.f90
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -c iotk_attr_interf.f90
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef –
…
D__MPI -D__PARA -I../include -c iotk_error.f90
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -c iotk_files_interf.f90
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -c iotk_files.f90
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef –
…
iotk_dat+REAL4_3.o iotk_dat+REAL4_6.o iotk_error.o iotk_error_interf.o iotk_files.o iotk_files_interf.o iotk_fmt.o iotk_fmt_interf.o iotk_misc.o iotk_misc_interf.o iotk_module.o iotk_scan.o iotk_scan_interf.o iotk_stream.o iotk_stream_interf.o iotk_str.o iotk_str_interf.o iotk_tool.o iotk_tool_interf.o iotk_unit.o iotk_unit_interf.o iotk_unit_list.o iotk_write.o iotk_write_interf.o iotk_xtox.o iotk_xtox_interf.o
ar: `u' modifier ignored since `D' is the default (see `U')
ar: creating libiotk.a
a - iotk_attr+CHARACTER1_0.o
a - iotk_attr+COMPLEX1_0.o
…
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -c iotk_print_kinds.f90
make loclib_only
make[3]: Entering directory '/home/espresso.5.1.r11289.pybeef/espresso/S3DE/iotk/src'
make[3]: Nothing to be done for 'loclib_only'.
make[3]: Leaving directory '/home/espresso.5.1.r11289.pybeef/espresso/S3DE/iotk/src'
mpif90 -g -pthread -o iotk_print_kinds.x iotk_print_kinds.o libiotk.a
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -c iotk.f90
make loclib_only
make[3]: Entering directory '/home/espresso.5.1.r11289.pybeef/espresso/S3DE/iotk/src'
make[3]: Nothing to be done for 'loclib_only'.
make[3]: Leaving directory '/home/espresso.5.1.r11289.pybeef/espresso/S3DE/iotk/src'
mpif90 -g -pthread -o iotk.x iotk.o libiotk.a
make[2]: Leaving directory '/home/espresso.5.1.r11289.pybeef/espresso/S3DE/iotk/src'
cd ../bin; ln -fs ../S3DE/iotk/tools/iotk .; \
ln -fs ../S3DE/iotk/src/iotk.x .; \
ln -fs ../S3DE/iotk/src/iotk_print_kinds.x .; \
cd ../; ln -fs S3DE/iotk iotk
make[1]: Leaving directory '/home/espresso.5.1.r11289.pybeef/espresso/install'
cd install ; make -f extlibs_makefile libelpa
make[1]: Entering directory '/home/espresso.5.1.r11289.pybeef/espresso/install'
touch fake_libelpa.a
rm fake_libelpa.a
make[1]: Leaving directory '/home/espresso.5.1.r11289.pybeef/espresso/install'
( cd Modules ; make TLDEPS= all || exit 1 )
make[1]: Entering directory '/home/espresso.5.1.r11289.pybeef/espresso/Modules'
( if test -x ../install/update_version ; then \
../install/update_version; \
else if test ! -f version.f90 ; then \
cat version.f90.in > version.f90 ; fi ; fi )
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -I../iotk/src -I../ELPA/src -I. -c version.f90
f951: Warning: Nonexistent include directory ‘../ELPA/src’ [-Wmissing-include-dirs]
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -I../iotk/src -I../ELPA/src -I. -c kind.f90
f951: Warning: Nonexistent include directory ‘../ELPA/src’ [-Wmissing-include-dirs]
…
D__MPI -D__PARA -I../include -I../iotk/src -I../ELPA/src -I. -c xc_vdW_DF.f90
f951: Warning: Nonexistent include directory ‘../ELPA/src’ [-Wmissing-include-dirs]
mpif90 -O3 -g -x f95-cpp-input -D__GFORTRAN -D__STD_F95 -D__FFTW -Duse_beef -D__MPI -D__PARA -I../include -I../iotk/src -I../ELPA/src -I. -c funct.f90
f951: Warning: Nonexistent include directory ‘../ELPA/src’ [-Wmissing-include-dirs]
funct.f90:554:28:
READ(dftout(5:), '(i)', IOSTAT=i) beeftype
1
Error: Nonnegative width required in format string at (1)
../make.sys:16: recipe for target 'funct.o' failed
make[1]: *** [funct.o] Error 1
make[1]: Leaving directory '/home/espresso.5.1.r11289.pybeef/espresso/Modules'
Makefile:110: recipe for target 'mods' failed
make: *** [mods] Error 1
Although the final error says “Error: Nonnegative width required in format string at (1)”, I’m afraid that the main problem I should tackle firs is the warning, “Nonexistent include directory ‘../ELPA/src’ [-Wmissing-include-dirs]”. I’ve tried to search for similar cases within the qe mail archive, but still don’t figure out how could I solve this compilation issue.
I would appreciate enormously if somebody could point me in the right direction. Sorry for this first long mail, but I wanted to provide any possible relevant information.
Best regards,
-----
Jorge A. Delgado, Ph.D.
Research Scientist - Catalysis and Nanomaterials
National Institute of Advanced Industrial Science and Technology (AIST)
Central 5-2, 1-1-1 Higashi, Tsukuba, Ibaraki, 305-8565, Japan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20191225/e7e12849/attachment.html>
More information about the users
mailing list