Building an Application

Normally, the only change needed to build your application with FFTW3 wrappers replacing original FFTW library is to add Intel MKL at the link stage (see section "Linking Your Application with Intel® Math Kernel Library" in the Intel MKL User's Guide).

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 MKL wrappers do not provide 100% of FFTW3 functionality.

For more complete information about compiler optimizations, see our Optimization Notice.