1
我想用CMake设置特定的MPI编译器(mpiifort
)。那么,不是编译器,而是从库中获取库和包含目录。但是在路径中也有mpif90
,它在底层使用gfortran
,并且有一组不同的包含目录和库。看来CMake中的FindMPI
模块坚持先找到mpif90
,因此设置了错误的路径。用CMake强制使用特定的MPI编译器
我试过在命令行设置MPI_Fortran_COMPILER=mpiifort
,或者设置为FC=mpiifort
,但没有任何作用。到目前为止,我发现的唯一解决方法是在当前目录中创建符号链接mpif90 -> mpiifort
并添加_MPI_PREFIX_PATH=.
。任何其他想法?
编辑:我曾试图环境变量MPI_Fortran_COMPILER
,但我不得不设置CMake的变量,而不是。所以这工作:
FC=ifort CC=icc cmake -D MPI_Fortran_COMPILER=mpiifort ...