compilation error " No rule to make target 'lib' "
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: 20
- Joined: Wed Jun 09, 2021 12:10 pm
compilation error " No rule to make target 'lib' "
Dear developers,
I am trying to install recent version Yambo 5.0 from github on my local machine having Ubuntu 18.04. I followed the steps below;
./configure FC=ifort F77=ifort CPP="icc -E" PFC=mpif90 CC=icc MPIFC='mpiifort' MPICC='mpiicc'
make -j4 hdf5
make -j4 netcdf
make -j4 yambo
No error appeared when installing hdf5 and netcdf. In the last step of yambo compilation, error appeared;
make[1]: *** No rule to make target 'lib'. Stop.
config/mk/global/actions/compile_yambo.mk:32: recipe for target 'yambo' failed
make: *** [yambo] Error 2
I searched this in yambo forum but not helped by any previous queries. Kindly suggest me to install Yambo. The config.log file is attached. Thank You!
Regards
Sumit Kukreti
Phd Scholar Physics
Indian Institute of Technology Jodhpur
INDIA
I am trying to install recent version Yambo 5.0 from github on my local machine having Ubuntu 18.04. I followed the steps below;
./configure FC=ifort F77=ifort CPP="icc -E" PFC=mpif90 CC=icc MPIFC='mpiifort' MPICC='mpiicc'
make -j4 hdf5
make -j4 netcdf
make -j4 yambo
No error appeared when installing hdf5 and netcdf. In the last step of yambo compilation, error appeared;
make[1]: *** No rule to make target 'lib'. Stop.
config/mk/global/actions/compile_yambo.mk:32: recipe for target 'yambo' failed
make: *** [yambo] Error 2
I searched this in yambo forum but not helped by any previous queries. Kindly suggest me to install Yambo. The config.log file is attached. Thank You!
Regards
Sumit Kukreti
Phd Scholar Physics
Indian Institute of Technology Jodhpur
INDIA
You do not have the required permissions to view the files attached to this post.
- Daniele Varsano
- Posts: 4201
- Joined: Tue Mar 17, 2009 2:23 pm
- Contact:
Re: compilation error " No rule to make target 'lib' "
Dear Sumit,
after a make clean, just reconfigure yambo (avoid PFC=mpif90), and then just type:
>make core
If it fails post here the error and config.log file.
Best,
Daniele
after a make clean, just reconfigure yambo (avoid PFC=mpif90), and then just type:
>make core
If it fails post here the error and config.log file.
Best,
Daniele
Dr. Daniele Varsano
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
S3-CNR Institute of Nanoscience and MaX Center, Italy
MaX - Materials design at the Exascale
http://www.nano.cnr.it
http://www.max-centre.eu/
-
- Posts: 20
- Joined: Wed Jun 09, 2021 12:10 pm
Re: compilation error " No rule to make target 'lib' "
Dear Daniele sir,
I tried by the suggested way;
make clean
./configure FC=ifort F77=ifort CPP="icc -E" CC=icc MPIFC='mpiifort' MPICC='mpiicc'
make core
But again error appeared;
[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.
config/mk/global/actions/compile_yambo.mk:32: recipe for target 'yambo' failed
make[1]: *** [yambo] Error 2
yambo build failed Thank You
Regards
Sumit Kukreti
PhD scholar Physics
IIT Jodhpur INDIA
I tried by the suggested way;
make clean
./configure FC=ifort F77=ifort CPP="icc -E" CC=icc MPIFC='mpiifort' MPICC='mpiicc'
make core
But again error appeared;
[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.
config/mk/global/actions/compile_yambo.mk:32: recipe for target 'yambo' failed
make[1]: *** [yambo] Error 2
yambo build failed Thank You
Regards
Sumit Kukreti
PhD scholar Physics
IIT Jodhpur INDIA
You do not have the required permissions to view the files attached to this post.
-
- Posts: 39
- Joined: Thu Aug 23, 2018 9:18 am
- Location: Fudan University, Shanghai, China
- Contact:
Re: compilation error " No rule to make target 'lib' "
Dear Daniele,
I met similar error when compiling 5.1. I have attached my log files here. How to fix it? Thank you!
With best regards,
Hao Zhang
---------------------------------------------------------------------------------
[lib/qe_pseudo] qe_pseudo (checking work to be done)
[lib/qe_pseudo] libqe_pseudo.a (lib)
[lib/slatec] slatec (checking work to be done)
[lib/slatec] libslatec.a (lib)
[lib/math77] math77 (checking work to be done)
[lib/math77] libmath77.a (lib)
[lib/local] local (checking work to be done)
[lib/local] liblocal.a (lib)
[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]: *** [yambo] Error 2
yambo build failed
-------------------------------------------------------------------------------------------------
I met similar error when compiling 5.1. I have attached my log files here. How to fix it? Thank you!
With best regards,
Hao Zhang
---------------------------------------------------------------------------------
[lib/qe_pseudo] qe_pseudo (checking work to be done)
[lib/qe_pseudo] libqe_pseudo.a (lib)
[lib/slatec] slatec (checking work to be done)
[lib/slatec] libslatec.a (lib)
[lib/math77] math77 (checking work to be done)
[lib/math77] libmath77.a (lib)
[lib/local] local (checking work to be done)
[lib/local] liblocal.a (lib)
[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]: *** [yambo] Error 2
yambo build failed
-------------------------------------------------------------------------------------------------
Daniele Varsano wrote: ↑Fri May 06, 2022 9:04 am Dear Sumit,
after a make clean, just reconfigure yambo (avoid PFC=mpif90), and then just type:
>make core
If it fails post here the error and config.log file.
Best,
Daniele
You do not have the required permissions to view the files attached to this post.
Dr. Hao Zhang
Department of Optical Science and Engineering, Fudan University,Shanghai 200433, China
http://homepage.fudan.edu.cn/zhanghao/
Department of Optical Science and Engineering, Fudan University,Shanghai 200433, China
http://homepage.fudan.edu.cn/zhanghao/
- Nicola Spallanzani
- Posts: 93
- Joined: Thu Nov 21, 2019 10:15 am
Re: compilation error " No rule to make target 'lib' "
Dear all,
it is a bug that we are going to fix before the final release. Here a workaround:
1) delete the directory yambo inside lib
2) then clone the yambo-libraries repository in the same place:
Best regerds,
Nicola
it is a bug that we are going to fix before the final release. Here a workaround:
1) delete the directory yambo inside lib
Code: Select all
rm -rf lib/yambo
Code: Select all
git clone https://github.com/yambo-code/yambo-libraries.git lib/yambo
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: 11
- Joined: Mon Dec 13, 2021 8:52 pm
- Contact:
Re: compilation error " No rule to make target 'lib' "
Hi Nicola,Nicola Spallanzani wrote: ↑Sun May 08, 2022 5:10 pm Dear all,
it is a bug that we are going to fix before the final release. Here a workaround:
1) delete the directory yambo inside lib2) then clone the yambo-libraries repository in the same place:Code: Select all
rm -rf lib/yambo
Best regerds,Code: Select all
git clone https://github.com/yambo-code/yambo-libraries.git lib/yambo
Nicola
Thank you! After fixing yambo library, the compilation started to work and created all executables except nl project, because of the following error:
ifort: error #10236: File not found: '.../yambo-5.1.1/lib/external/intel/mpiifort/lib/libiotk.a'
After copying libiotk.a from previous compilation (version 5.0.4, since iotk has the same version) everything finally compiled:
I usedThis is yambo - MPI+HDF5_MPI_IO - Ver. 5.1.1 Revision 21528 Hash 0e32e3c52
Intel compiler 2019.3.199
mvapich2-2.3.1
hdf5-1.10.4
Kind,
Dmitry
-
- Posts: 39
- Joined: Thu Aug 23, 2018 9:18 am
- Location: Fudan University, Shanghai, China
- Contact:
Re: compilation error " No rule to make target 'lib' "
Dear Spallanzani,
Thank you for the advice. I have followed your suggestion, but met with an error when compiling ypp. I have attached the log file here. How to fix it? Thank you!
With best regards,
Hao
-----------------------
[driver] ypp (checking work to be done)
[driver] ypp
[driver] ypp (link)
ypp linking failed. Check logs/compile_ypp.log
make[1]: *** [ypp] Error 1
ypp build failed
-------------------------------
Thank you for the advice. I have followed your suggestion, but met with an error when compiling ypp. I have attached the log file here. How to fix it? Thank you!
With best regards,
Hao
-----------------------
[driver] ypp (checking work to be done)
[driver] ypp
[driver] ypp (link)
ypp linking failed. Check logs/compile_ypp.log
make[1]: *** [ypp] Error 1
ypp build failed
-------------------------------
Nicola Spallanzani wrote: ↑Sun May 08, 2022 5:10 pm Dear all,
it is a bug that we are going to fix before the final release. Here a workaround:
1) delete the directory yambo inside lib2) then clone the yambo-libraries repository in the same place:Code: Select all
rm -rf lib/yambo
Best regerds,Code: Select all
git clone https://github.com/yambo-code/yambo-libraries.git lib/yambo
Nicola
You do not have the required permissions to view the files attached to this post.
Dr. Hao Zhang
Department of Optical Science and Engineering, Fudan University,Shanghai 200433, China
http://homepage.fudan.edu.cn/zhanghao/
Department of Optical Science and Engineering, Fudan University,Shanghai 200433, China
http://homepage.fudan.edu.cn/zhanghao/
- Nicola Spallanzani
- Posts: 93
- Joined: Thu Nov 21, 2019 10:15 am
Re: compilation error " No rule to make target 'lib' "
Dear Hao,
before to start to suppose what is going wrong now, I suggest to you to start the compilation from scratch doing the workaround before the configure procedure.
Best,
Nicola
before to start to suppose what is going wrong now, I suggest to you to start the compilation from scratch doing the workaround before the configure procedure.
Best,
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: 39
- Joined: Thu Aug 23, 2018 9:18 am
- Location: Fudan University, Shanghai, China
- Contact:
Re: compilation error " No rule to make target 'lib' "
Dear Dmitry,DmitrySkachkov wrote: ↑Sun May 08, 2022 10:37 pmHi Nicola,Nicola Spallanzani wrote: ↑Sun May 08, 2022 5:10 pm Dear all,
it is a bug that we are going to fix before the final release. Here a workaround:
1) delete the directory yambo inside lib2) then clone the yambo-libraries repository in the same place:Code: Select all
rm -rf lib/yambo
Best regerds,Code: Select all
git clone https://github.com/yambo-code/yambo-libraries.git lib/yambo
Nicola
Thank you! After fixing yambo library, the compilation started to work and created all executables except nl project, because of the following error:
ifort: error #10236: File not found: '.../yambo-5.1.1/lib/external/intel/mpiifort/lib/libiotk.a'
After copying libiotk.a from previous compilation (version 5.0.4, since iotk has the same version) everything finally compiled:
I usedThis is yambo - MPI+HDF5_MPI_IO - Ver. 5.1.1 Revision 21528 Hash 0e32e3c52
Intel compiler 2019.3.199
mvapich2-2.3.1
hdf5-1.10.4
Kind,
Dmitry
After following Nicola' method, my last error disappears, but I also met with the error "ifort: error #10236: File not found: '/public/src/qe/qe70-2/yambo/lib/external/intel/mpiifort/lib/libiotk.a'". And I have followed what you said, copy the file from 5.0.4 to 5.1 directory, but it still failed. Could you please describe your method with more details? Thank you!
With best regards,
Hao
Dr. Hao Zhang
Department of Optical Science and Engineering, Fudan University,Shanghai 200433, China
http://homepage.fudan.edu.cn/zhanghao/
Department of Optical Science and Engineering, Fudan University,Shanghai 200433, China
http://homepage.fudan.edu.cn/zhanghao/
-
- Posts: 11
- Joined: Mon Dec 13, 2021 8:52 pm
- Contact:
Re: compilation error " No rule to make target 'lib' "
Hi Hao,plasmon wrote: ↑Tue May 10, 2022 3:25 am Dear Dmitry,
After following Nicola' method, my last error disappears, but I also met with the error "ifort: error #10236: File not found: '/public/src/qe/qe70-2/yambo/lib/external/intel/mpiifort/lib/libiotk.a'". And I have followed what you said, copy the file from 5.0.4 to 5.1 directory, but it still failed. Could you please describe your method with more details? Thank you!
With best regards,
Hao
At first please check your yambo/bin directory. It should already contain all executables except yambo_nl. If not than you have some additional errors, please check your log file for additional errors before the last one, because compiler does not stop after the first error.
In my case I copied libiotk.a from 5.0.4 version to
.../yambo-5.1.1/lib/external/intel/mpiifort/lib/libiotk.a
and then made
> make nl-project
Kind,
Dmitry