I am attempting to build vasp 6.5.0 with the latest intel oneapi compiler (2025.0.4 20241205). After solving a few issues with application of the correct ifx/icpx compilers in the compilation of c-sources, I am running into an issue with linking to the (Intel MKL) interface libraries to fftw. The error I encounter is as below:
make[2]: Leaving directory '/data/Software/Vasp/vasp.6.5.0/build/std'
rm -f vasp ; make vasp ; cp vasp ../../bin/vasp_std
make[2]: Entering directory '/data/Software/Vasp/vasp.6.5.0/build/std'
make[2]: *** No rule to make target 'fftmpiw.f90', needed by 'fftmpiw.o'. Stop.
make[2]: Leaving directory '/data/Software/Vasp/vasp.6.5.0/build/std'
I have added a reference to the compiled fft interface in makefile.include, but I am still encountering the same fftw error, namely that the build system does not know how to create the object file fftmpiw.o. I would appreciate any hints on what I should try to address this problem. My makefile.include file includes a reference to the fftw3 interface library I build in the mkl/interfaces folder.
What can I do to solve this linking problem. Also where is the ftmpiw.f90 referenced in the error and where is it located?
OBJECTS = fftmpiw.o fftmpi_map.o fftw3d.o fft3dlib.o /opt/intel/oneAPI/mkl/latest/share/mkl/interfaces/fftw3xf/libfftw3xf_intel.a
OBJECTS_O1 += fftw3d.o fftmpi.o fftmpiw.o
OBJECTS_O2 += fft3dlib.o