Witam, potrzebuję użyć transformaty Fouriera, dostępnej w bibliotece dynamicznej FFTW. Poszukałem nieco na różnych forach i jedyny sposób jaki znalazłem i który działał, to taki:

HINSTANCE DLL;
DLL = LoadLibrary("libfftw3l-3.dll");

for(int i=0 ; i<input->WinNum ; i++) {
	CurrentWin = CopyToVector(input, 0, input->WinSize);
	float scalar = sqrt((input->WinSize/input->hop)/2);

	fftw_complex *wejscie = MultiVec(CurrentWin, wn, scalar, input->WinSize);
	fftw_complex *wyjscie = new fftw_complex[input->WinSize];
	fftw_plan p;

	p = fftw_plan_dft_1d(input->WinSize,wejscie,wyjscie,FFTW_FORWARD,FFTW_ESTIMATE);
	fftw_execute(p);
	fftw_destroy_plan(p);
}
FreeLibrary(DLL);

Wcześniej oczywiście zaincludowałem nagłówki <windows.h> oraz <fftw3.h>, plik .dll wrzuciłem do katalogu z plikiem .exe, a plik nagłówkowy do katalogu kompilatora. Nie dostaję żadnych błędów odnośnie tej części:

fftw_complex *wejscie = MultiVec(CurrentWin, wn, scalar, input->WinSize);
fftw_complex *wyjscie = new fftw_complex[input->WinSize];
fftw_plan p;

Natomiast dla tych funkcji:

p = fftw_plan_dft_1d(input->WinSize,wejscie,wyjscie,FFTW_FORWARD,FFTW_ESTIMATE);
fftw_execute(p);
fftw_destroy_plan(p);

dostaję komunikaty:
undefined reference to _imp__fftw_destroy_plan' undefined reference to _imp__fftw_execute'
undefined reference to `_imp__fftw_plan_dft_1d'
Co ciekawe, kiedy użyłem identycznego kodu w devie, wszystko działało jak trzeba, jednak nie dawno przesiadłem się na Eclipse'a i chciałbym to rozgryźć.
Dodam jeszcze że w kwestii linkowania jakichkolwiek bibliotek jestem zupełnie zielony, więc będę wdzięczny za bardziej łopatologiczne wyjaśnienia ;)