我的c++和Fortran项目使用CMake。我使用英特尔Fortran编译器和VS2017。每次我尝试在CMake gui中配置项目时,我都会收到以下错误:
The Fortran compiler identification is unknown
CMake Error at Lib/Fast_Table/CMakeLists.txt:2 (project):
No CMAKE_Fortran_COMPILER could be found.
我在网上到处寻找解决方案,但似乎找不到任何解决问题的方法。路径看起来都是正确的,并且与同一项目的其他同行相匹配。
以下是CMakeError.log文件中显示的错误:
Compiling the Fortran compiler identification source file "CMakeFortranCompilerId.F" failed.
Package 'IFLangServicePackage' failed to load.
LINK : fatal error LNK1104: cannot open file 'ifconsol.lib'
上面错误中的.F文件是自己编译的,我尝试在VS2017中构建的其他VS2017 Fortran项目也是如此。正是cmake gui中的配置和生成过程导致了这些错误。
我安装的VS2017和"英特尔Fortran"设置不正确。我不得不转到下面的构建目录中的"英特尔Fortran"解决方案。\CMakeFiles\3.18.4\CompilerIdFortran.我在Visual Studio中打开了该项目。工具>gt;选项>gt;英特尔编译器和工具>gt;Visual Fortran>gt;编译器。然后我转到x64选项卡;最新的";选择,我选择";"英特尔(R(Visual Fortran编译器19.1.0.166[英特尔(R(64]";这为编译Fortran提供了适当的设置。2020 compilers_and_libraries目录中也有一些文件不在2020.0.166目录中。