Page 1 of 1

Compilation with oneAPI 2025

Posted: Tue Feb 04, 2025 7:42 pm
by csk
Dear all!

It seems that Intel finally deprecated the "classic" compiler/wrapper (ifort/mpiifort, etc.) with oneAPI 2025. When I try to compile Yambo 5.2.4 on Ubuntu 22.04, the standard compilation line is not working any more (cannot find ifort...) and, depending on how I play with the suggestions by Intel, I either don't get MPI working, or I get the following error.

Code: Select all

configure: error: Found FC precompiler problems in processing FC source.
The latter case would occur e.g. with

Code: Select all

./configure CC=icx MPICC="mpiic -cc=ic" MPIFC="mpiifx -fc=ifx" MPIF77="mpiifx -fc=ifx" FC=ifx F77=ifx --enable-open-mp --enable-par-linalg --with-scalapack-libs=mkl --with-blacs-libs=mkl  --enable-slepc-linalg --enable-time-profile --enable-memory-profile
Are there any suggestions on how to move to the "new" compiler in the configure options?

Thanks a lot for your help!
Christian

Re: Compilation with oneAPI 2025

Posted: Wed Feb 05, 2025 10:10 am
by Nicola Spallanzani
Dear Christian,
I'm working on this issues that is partially solved in the branch 5.3 of the Yambo github repo. I think I'll be able to fix it definitely before the final release.

Best,
Nicola

Re: Compilation with oneAPI 2025

Posted: Thu Feb 06, 2025 10:14 pm
by csk
Dear Nicola!

Thanks for your reply! Which branch of the git works at the moment and which configure command have you used?

Thanks!
Christian

Re: Compilation with oneAPI 2025

Posted: Mon Feb 10, 2025 10:44 am
by Nicola Spallanzani
Dear Christian,
you can try the branch 5.3 of the official github repository.
This is the configure line I used:

Code: Select all

./configure CC=icx FC=ifx F77=ifx FPP="ifx -E -free -P" CPP="icx -E -ansi" MPICC=mpiicx MPIFC=mpiifx MPIF77=mpiifx \
  --enable-time-profile --enable-memory-profile --enable-mpi --enable-open-mp \
  --with-blas-libs="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl" \
  --with-lapack-libs="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl" \
  --with-fft-libs="-L${MKLROOT}/lib/intel64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -ldl" \
  --with-fft-includedir=${MKLROOT}/include \
  --enable-slepc-linalg --enable-par-linalg \
  --with-blacs-libs="-L${MKLROOT}/lib/intel64 -lmkl_blacs_intelmpi_lp64" \
  --with-scalapack-libs="-L${MKLROOT}/lib/intel64 -lmkl_scalapack_lp64" \ 
  --with-extlibs-path=${HOME}/opt/ext-libs
Let me know if it works for you.

Best,
Nicola