如何使用gfortran而不是ifort编译MPI?

时间:2016-06-02 11:44:58

标签: mpi gfortran

以前曾问过类似的question,但答案并没有直接解决我遇到的问题。我正在尝试在HPC机器上编译基于fortran的应用程序。该计算机同时安装了ifortmpifort并且位于路径中。当我使用MPI(Open MPI 1.8.8)包装器ifort时,它会自动使用gfortran,这很好。但出于某种原因,我想改用mpifort。如何确保gfortran包装器默认为ifort而不是{{1}}?

2 个答案:

答案 0 :(得分:3)

mpifort读取Open MPI $ompi_root/share/openmpi/mpifort-wrapper-data.txt使用的默认Fortran编译器。构建过程存储了构建库时选择的Fortran编译器。可以通过设置OMPI_FC环境变量来覆盖它。这同样适用于C包装器(OMPI_CC)和C ++包装器(OMPI_CXX)。

示例:

$ mpifort -showme:command
ifort
$ env OMPI_FC=gfortran mpifort -showme:command
gfortran

请记住,与C和C ++不同,英特尔在Fortran ABI上不同意GCC。

答案 1 :(得分:0)

mpifort -fc=gfortran main.f90 (or other files you want to compile)也可以帮助改变编译器。