Developer Reference for Intel® oneAPI Math Kernel Library for C
Building an Application With FFTW3 Interface Wrappers
Normally, the only change needed to build your application with FFTW3 wrappers replacing original FFTW library is to add Intel® oneAPI Math Kernel Library (oneMKL) at the link stage (see section “Linking Your Application with Intel® oneAPI Math Kernel Library (oneMKL) Math Kernel Library” in the Intel® oneAPI Math Kernel Library (oneMKL) Developer Guide Linux or Windows).
If you recompile your application, add subdirectory include/fftw to the search path for header files to avoid FFTW3 version conflicts.
Sometimes, you may have to modify your application according to the following recommendations:
The application requires #include "fftw3.h", which it probably already includes.
The application does not require #include "mkl_dfti.h".
The application does not require #include "fftw3_mkl.h". It is required only in case you want to use the MKL_RODFT00 constant.
If the application does not check whether a NULL plan is returned by plan creation functions, this check must be added, because the FFTW3 to Intel® oneAPI Math Kernel Library (oneMKL) wrappers do not provide 100% of FFTW3 functionality.