Связывание libfftw3-3.lib в Visual Studio 2010

Я пытаюсь заставить простой проект работать с FFTW в Visual Studio 2010. У меня проблемы с подключением библиотеки.

Я создал 64-битные .lib файлы, как указано в их страница Windows

Я разархивировал 64-битную версию их загрузки и запустил указанные инструменты в этом каталоге. Я распаковал его в папку с именем «fftw», как брат моего проекта.

В Visual Studio я создал консольное приложение C ++ со всеми настройками по умолчанию. Тип сборки по умолчанию — Debug Win32. Я добавил эту строку в Свойства конфигурации → Линкер:
C:\Users\XXXXX\Documents\Visual Studio 2010\Projects\fftw\libfftw3-3.lib

Я также добавил libfftw3-3.lib в Свойства конфигурации → Линкер → Ввод и пробовал полный путь там.

Я включаю комплекс StdLib и FFTW:

#include <complex>
#include "..\..\fftw\fftw3.h"

Моя основная функция просто имеет пример кода:

int _tmain(int argc, _TCHAR* argv[])
{
const int N = 1024;
fftw_complex in[N], out[N];
fftw_plan p;
p = fftw_create_plan(N, FFTW_FORWARD, FFTW_ESTIMATE);
fftw_one(p, in, out);
fftw_destroy_plan(p);
return 0;
}

Когда я пытаюсь построить, я получаю это:

1>------ Build started: Project: FFTTest, Configuration: Debug Win32 ------
1>  FFTTest.cpp
1>c:\users\XXXXX\documents\visual studio 2010\projects\ffttest\ffttest\ffttest.cpp(34): error C3861: 'fftw_create_plan': identifier not found
1>c:\users\XXXXX\documents\visual studio 2010\projects\ffttest\ffttest\ffttest.cpp(36): error C3861: 'fftw_one': identifier not found
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Может ли кто-то показать мне ошибку в моем пути?

3

Решение

Нашел это: fftw_create_plan() а также fftw_one() являются функциями, которые были удалены из FFTW3.

Возможно, вы получили код от Учебник FFTW2, увидеть Учебник FFTW3 вместо.

4

Другие решения

Не используйте обратную косую черту в путях:

#include "../../fftw/fftw3.h"

Обратная косая черта в C / C ++ интерпретируется как escape-символ, чтобы создать обратную косую черту, вам нужно удвоить ее, но обычно всегда используйте / сделать разделители пути.

0

Я пытался использовать FFTW v2 API с библиотеками FFTW v3. Рабочий пример на их страница учебника v3.

Шаги, приведенные выше для ссылки на библиотеку, в порядке. Вы также можете поместить FFTW DLL в каталог, где находится ваш исполняемый файл.

0
По вопросам рекламы [email protected]