是否可以使用mpif90编译pgplot?

是否可以使用mpif90编译pgplot?,plot,fortran,Plot,Fortran,我正在尝试在Linux中使用mpif90编译pgplot。我能够用gfortran和g77编译pgplot。但是,我需要它与另一个用mpif90编译的程序兼容。不幸的是,我不可能用gfortran重新安装另一个程序(不是pgplot)。有没有办法用mpif90编译pgplot 编辑:我使用mpif90-v检查编译器。它是pgf90。我不知道mpif90是一个包装器…对不起。我将尝试使用pgf90编译它。mpif90(和mpifort)编译器实际上只是包装器,它使用一组额外的标志调用“标准”编译器

我正在尝试在Linux中使用mpif90编译pgplot。我能够用gfortran和g77编译pgplot。但是,我需要它与另一个用mpif90编译的程序兼容。不幸的是,我不可能用gfortran重新安装另一个程序(不是pgplot)。有没有办法用mpif90编译pgplot

编辑:我使用mpif90-v检查编译器。它是pgf90。我不知道mpif90是一个包装器…对不起。我将尝试使用pgf90编译它。

mpif90(和
mpifort
)编译器实际上只是包装器,它使用一组额外的标志调用“标准”编译器,以确保自动链接正确的mpi库等。您通常可以运行
mpif90-show
,以查看实际使用的命令。例如,我看到在本地机器上运行这个

> mpif90 -show
/usr/bin/gfortran -I/path/to/openmpi/include -fexceptions -pthread -I/path/to/openmpi/lib64 \
    -Wl,-rpath -Wl,/path/to/openmpi/lib64 -Wl,--enable-new-dtags -L/path/to/openmpi/lib64 -lmpi_usempi -lmpi_mpifh -lmpi
这表示mpif90正在使用系统
gfortran
编译器“在引擎盖下”

为了明确回答您的问题,只要您可以使用
mpif90
使用“引擎盖下”的编译器编译pgplot,那么您通常也可以使用
mpif90
编译pgplot。但是,只要
mpif90
包装的编译器与您用于构建pgplot的编译器相匹配,那么您可能不需要再次使用
mpif90
显式编译pgplot

要使用mpif90实际构建pgplot,需要查看pgplot构建系统以及如何设置编译器。快速查看,似乎需要设置出现在
sys\uu/*.conf
文件中的FCOMPL变量。(如果这实际上是您问题的要点,那么您可能希望对其进行编辑以明确这一点)

mpif90(和
mpifort
)编译器实际上只是包装器,它使用一组额外的标志调用“标准”编译器,以确保自动链接正确的mpi库等。您通常可以运行
mpif90-show
,以查看实际使用的命令。例如,我看到在本地机器上运行这个

> mpif90 -show
/usr/bin/gfortran -I/path/to/openmpi/include -fexceptions -pthread -I/path/to/openmpi/lib64 \
    -Wl,-rpath -Wl,/path/to/openmpi/lib64 -Wl,--enable-new-dtags -L/path/to/openmpi/lib64 -lmpi_usempi -lmpi_mpifh -lmpi
这表示mpif90正在使用系统
gfortran
编译器“在引擎盖下”

为了明确回答您的问题,只要您可以使用
mpif90
使用“引擎盖下”的编译器编译pgplot,那么您通常也可以使用
mpif90
编译pgplot。但是,只要
mpif90
包装的编译器与您用于构建pgplot的编译器相匹配,那么您可能不需要再次使用
mpif90
显式编译pgplot


要使用mpif90实际构建pgplot,需要查看pgplot构建系统以及如何设置编译器。快速查看,似乎需要设置出现在
sys\uu/*.conf
文件中的FCOMPL变量。(如果这实际上是您问题的要点,那么您可能希望对其进行编辑以明确这一点)

尝试键入
mpif90--version
,这将向您显示使用
mpif90
编译时实际使用的编译器+版本。如果这与您最初编译pgplot时使用的匹配,那么您应该可以。如果您运行
mpif90-show
,您将看到实际使用的命令(例如,您可以想象在任何地方都使用该命令替换mpif90)。我不理解您的问题。在执行
configure
时,您是否询问如何更改编译器。正如@d_1999所说的,
mpif90
在您的计算机上只是一个gfortran,尽管它可能是其他的东西,然后就用它来绘制pgplot。@VladimirF我没有意识到mpif90是一个包装器。我将尝试使用编译器“引擎盖下”,如果我不能解决它,我会问另一个问题。谢谢~~尝试键入
mpif90--version
,这将显示使用
mpif90
编译时实际使用的编译器+版本。如果这与您最初编译pgplot时使用的匹配,那么您应该可以。如果您运行
mpif90-show
,您将看到实际使用的命令(例如,您可以想象在任何地方都使用该命令替换mpif90)。我不理解您的问题。在执行
configure
时,您是否询问如何更改编译器。正如@d_1999所说的,
mpif90
在您的计算机上只是一个gfortran,尽管它可能是其他的东西,然后就用它来绘制pgplot。@VladimirF我没有意识到mpif90是一个包装器。我将尝试使用编译器“引擎盖下”,如果我不能解决它,我会问另一个问题。多谢各位~~