配置 FFTW `configure: error: 不知道如何启用 OpenMP`

问题描述

我已经使用 FFTW3 两个月了。我最近决定尝试对其实施一些并行方面以加快计算速度。不过……

当我尝试 ./configure --enable-threads --enable-openmp --prefix=/$HOME/Desktop/FFTWLibParallel 时,它运行了一段时间,然后我遇到了以下情况:

checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... lower case,underscore,no extra underscore
checking for OpenMP flag of C compiler... unkNown
configure: error: don't kNow how to enable OpenMP

我尝试使用 ./configure CC=gcc-12.0.0 ... 运行,但是返回

checking for gcc... gcc-12.0.0
checking whether the C compiler works... no
configure: error: in `/Users/USER/Desktop/fftw-3.3.9':
configure: error: C compiler cannot create executables
See `config.log' for more details 

问题显然与使用--enable-openmp有关,但我不确定为什么或如何解决它。我在这里看到了这个问题的一些版本,但没有一个能帮助我解决我的问题。

谢谢。

编辑:

我用的是 Mac!

解决方法

如果有人像我一样遇到类似的问题并且找不到解决方案,请回到这里。 经过进一步探索,以下最终对我有用:

./configure CC=gfortran --enable-openmp --enable-threads CFLAGS="-fopenmp"

关键部分是 CC=gfortran,与 CC=gcc 不同,CC=gfortran 启用了 CFLAGS="-fopenmp"。