I am trying to compile the FINUFFT library for using in my small personal C++ project. I sit on Windows11 + MinGW.
Firstly, I need to have FFTW library, since the FINUFFT has dependence on it. I just downloaded the following thing: 64-bit version: fftw-3.3.5-dll64.zip (3.1MB). It contains the header (fftw3.h) and dll files (libfftw3.dll,...), so I suppose I dont need to do anything else.
In order to compile FINUFFT I just supposed to download the FINUFFT directory and manage the make.inc file. I copied the make.inc.windows_mingw file as make.inc. Inside there are two lines which I suppose to change: directory to FFTW headers and FFTW dll files. I just putted it like that:
FFTW_H_DIR= C:\Users\user\Documents\finufft-master\fftw\
FFTW_LIB_DIR= C:\Users\user\Documents\finufft-master\fftw\
Since I already have MinGW, I run cmd and cd into directory of my downloaded FINUFFT files. And type:
make lib
And I get next message:
g++ -DSINGLE -c -O3 -funroll-loops -march=native -fcx-limited-range -IC:\Users\user\Documents\qt\finufft-master\fftw FFTW_LIB_DIR= C:\Users\user\Documents\qt\finufft-master\fftw -Iinclude -fPIC -std=c++14 -fopenmp src/finufft.cpp -o src/finufft_32.o
g++: warning: FFTW_LIB_DIR=: linker input file unused because linking not done
g++: error: FFTW_LIB_DIR=: linker input file not found: No such file or directory
g++: warning: C:\Users\user\Documents\qt\finufft-master\fftw: linker input file unused because linking not done
make: *** [makefile:157: src/finufft_32.o] Error 1
So I guess MinGW understood 'FFTW_H_DIR' but somehow failed linking with 'FFTW_LIB_DIR'.
How I can fix this? I cant even understand the reason why it fails. The github instruction for installation of FINUFFT says that I need 'FFTW3 including its development libraries'. Maybe I dont have this development libraries? What this suppose to mean? I tried googling but still have no idea.
Thank you very much in advance! Hope to eventually use the FINUFFT in my project, since it will significantly boost calculation speed.