Компиляция FFTW (OpenMP) с помощью cmake на windows - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь установить FFTW с помощью cmake на мой компьютер с Windows. Я скачал последнюю версию исходных файлов и сначала запустил cmake со следующими параметрами:

mkdir build && cd build
cmake --DBUILD_TESTS=False -DENABLE_FLOAT=On ..
cmake --build . --config Release

Это прекрасно работает как в Visual Studio 2017, так и в 2019 году. Однако, когда я попыталсяскомпилировав код с OpenMP,

cmake --DBUILD_TESTS=False -DENABLE_FLOAT=On -DENABLE_OPENMP=On ..
cmake --build . --config Release

Я получаю целую кучу ошибок компоновки:

[...]
ct.obj : error LNK2001: unresolved external symbol fftwf_ops_zero [C:\Users\jha1\Desktop\fftw-3.3.8.tar\fftw-3.3.8\build\fftw3f_omp.vcxproj]
dft-vrank-geq1.obj : error LNK2001: unresolved external symbol fftwf_ops_zero [C:\Users\jha1\Desktop\fftw-3.3.8.tar\fftw-3.3.8\build\fftw3f_omp.vcxproj]
hc2hc.obj : error LNK2001: unresolved external symbol fftwf_ops_zero [C:\Users\jha1\Desktop\fftw-3.3.8.tar\fftw-3.3.8\build\fftw3f_omp.vcxproj]
[...]

Однако, похоже, cmake смог найти OpenMP на этапе настройки, поэтомуЯ не уверен, что является причиной этой проблемы.

[...]
-- Found OpenMP_C: -openmp (found version "2.0")
-- Found OpenMP_CXX: -openmp (found version "2.0")
-- Found OpenMP: TRUE (found version "2.0")
[...]

Обратите внимание, что это прекрасно работало на моей машине Linux с gcc 9.

...