Error: No CMAKE_Fortran_COMPILER could be found for Visual Studio 2019 Fortran support

Error: No CMAKE_Fortran_COMPILER could be found for Visual Studio 2019 Fortran support

我正在使用 CMAKE 构建开源项目(例如 GitHub 等可用的项目)并且我还安装了 Visual Studio 2019。有一个问题是 CMAKE 在我的系统中找不到 Fortran 编译器,而我已经安装了 MinGW 和 Fortran 编译器。错误是:

**The Fortran compiler identification is unknown** 
**No CMAKE_Fortran_COMPILER could be found.**

如何解决这个问题并让 CMAKE 知道 Fortran 编译器?

注意:我尝试了其他不需要 Fortran 编译器的项目并且构建成功。

已安装的软件:

CMAKE 3.18.5, Visual Studio 2019年, MinGW

您需要将您的 fortran 可执行文件显示到 CMakeList.txt 的位置,例如

set(CMAKE_Fortran_COMPILER "C:/MinGW/bin/gfortran.exe")

2019 年 Visual studio 编辑 2:

如果你想生成Visual Studio 2019解决方案

  1. 下载英特尔® oneAPI HPC 工具包here
  2. 如果 cmake 找不到 Fortran 编译器,请添加一个 cmake 标志 CMAKE_Fortran_COMPILER,其值为您在上面安装的 ifort.exe 路径。喜欢%install_path%/Intel/oneAPI/compiler/2021.1.1/windows/bin/intel64/ifort.exe
  3. 配置并生成解决方案。

编辑:

好的,现在我明白你为什么会收到这个错误了。 Visual Studio 生成器不支持 MinGW gfortran。它们是完全独立的生态系统。 删除您的构建目录并创建一个新目录。然后使用 cmake .. -G "MinGW Makefiles" 代替。我从 msys 的 CLI 提示符下尝试并成功地从 Windows 机器获得了库。

如果您使用的是 Intel 处理器,您应该首先为 Visual Studio 2019

设置 Fortran 环境

最好检查编译guide and some troubleshooting Fortran Integration Issues with visual studio