我无法将FFTW链接到我的代码中,以便在我的代码中使用其函数。我已经花了足够的时间在这上面,正在考虑放弃它。
我非常熟悉GSL,并且已经广泛使用线性代数库并取得了良好的结果。 GSL还有一组FFT函数,似乎可以做与FFTW相同的事情。它们一样好吗?还是FFTW显着更好,值得花更多时间来尝试让它工作?
(顺便说一下,我的错误是在一个远程系统上使用g ++时,我无法编译我的代码以识别对FFTW调用的引用。我的makefile包括-L / libdirectory -lfftw3,但我仍然会得到某些(不是所有)fftw函数的未定义引用)。
以下是源代码:
#include "fftw3.h"
in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * length);
以下是相关的编译命令:
g++ -std=c++0x -fPIC ... -lm ... -L/libdirectory -lfftw3
以下是错误信息:
/source.cc: undefined reference to 'fftw_malloc'
请注意,编译器能够找到fftw3.h。我还可以声明对象,例如fftw_complex
和fftw_plan
。
编辑:我仍然无法让我的Makefile链接静态库。但是,我能够重新编译共享库,并且到目前为止这些库似乎已经起作用了。不过,我仍然希望看到比11年前更新的一些基准测试!
#include "fftw3.h"
in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * length);
以下是相关的编译命令:g++ -std=c++0x -fPIC ... -lm ... -L/libdirectory -lfftw3
以下是错误信息:/source.cc: undefined reference to 'fftw_malloc'
- Machinus