Visible to Intel only — GUID: GUID-96706BDD-A9FB-4C2F-B8B3-E6F564BEBB20
Visible to Intel only — GUID: GUID-96706BDD-A9FB-4C2F-B8B3-E6F564BEBB20
Building Your Own FFTW3 Interface Wrapper Library
The FFTW3 wrappers to Intel® oneAPI Math Kernel Library (oneMKL) are delivered both integrated in Intel® oneAPI Math Kernel Library (oneMKL) and as source code, which can be compiled to build a standalone wrapper library with exactly the same functionality. Normally you do not need to build the wrappers yourself.However, if your Fortran application is compiled with a compiler that uses a different name decoration than the Intel® Fortran compiler or if you are using compiler options altering the Fortran name decoration, you may need to build the wrappers that use the appropriate name changing convention.
The source code for the wrappers, makefiles, and files with lists of functions are located in the .\interfaces\fftw3xf subdirectory in the Intel® oneAPI Math Kernel Library (oneMKL) directory.
To build the wrappers,
Change the current directory to the wrapper directory
Run the make command on Linux* OS and macOS* or the nmake command on Windows* OS with a required target and optionally several parameters.
In the following example, the make command is used to build the FFTW3 Fortran wrappers to Intel® oneAPI Math Kernel Library (oneMKL) for use from the GNU g77* Fortran compiler on Linux OS based on Intel® 64 architecture:
cd interfaces/fftw3xf make libintel64 compiler=gnu fname=a_name__ INSTALL_DIR=/my/path
This command builds the wrapper library using the GNU gcc compiler, decorates the name with the second underscore, and places the result, named libfftw3xf_gnu.a, into the /my/path directory. The name of the resulting library is composed of the name of the compiler used and may be changed by an optional parameter INSTALL_LIBNAME.