Page 1 of 1

Compilation Errors with Intel oneAPI on Ubuntu 24.04.

Posted: Fri May 17, 2024 2:50 am
by hszhao.cn@gmail.com
Hello VASP Community,

I am trying to compile VASP 6.3.2 on Ubuntu 24.04 using Intel oneAPI, but I am encountering multiple errors related to undefined identifiers. The errors include undefined identifiers such as _Float32, _Float64, _Float128, _Float32x, _Float64x, and __builtin_fabsf128.

Here are some snippets of the errors:

Code: Select all

/usr/include/stdlib.h:457: error: identifier "_Float32x" is undefined
/usr/include/stdlib.h:464: error: identifier "_Float64x" is undefined
/usr/include/c++/13.2.1/bits/std_abs.h:142: error: identifier "__builtin_fabsf128" is undefined
compilation aborted for sites.cpp (code 2)
I have ensured that my environment is set up correctly with the Intel oneAPI compilers: - Fortran compiler: mpiifx - C compiler: icx - C++ compiler: icpx

I also made sure to source the Intel oneAPI environment:

Code: Select all

source /opt/intel/oneapi/setvars.sh
However, the errors persist.

My environment setup:

OS: Ubuntu 24.04
Compiler: Intel oneAPI (2023)

Has anyone encountered similar issues or have any suggestions on how to resolve these errors? Is there a specific GCC version or library setup that I might be missing?

See here for the related discussion.

Thank you for your assistance.

Best regards,
Zhao

Re: Compilation Errors with Intel oneAPI on Ubuntu 24.04.

Posted: Mon May 27, 2024 10:20 am
by jonathan_lahnsteiner2
Dear Zhao,

We have not done any compile tests in ubuntu24.04 ourselves. But in principle, it should be possible to compile vasp there.
The error you are getting looks like there is some error in your environment. During the compilation process the standard libraries
of the gnu compiler are accessed which should not be the case when using intel compilers.
Could you please post the output of the following commands after loading the intel oneapi:

Code: Select all

which ifort

Code: Select all

which mpiifort

Code: Select all

echo $MKLROOT
And please also upload the makefile.include what you are using.

All the best Jonathan