我正在用 mpif90 编译一个第三方软件,在我的例子中是 gcc 的 mpi 版本。该软件包带有一个生成文件。编译目标文件后,makefile 使用 ar 创建存档,但由于没有输入目标文件而失败。实际上,我尝试使用手动编译目标文件(.o)
mpif90 -lmkl_gf -lmkl_intel_thread -lmkl_core -liomp5 -lpthread -lm -openmp -O3 -DMPI -c a.f90
并且没有创建 ao,而是创建了一个 .mod 文件。我对fortran没有太多经验,我有点困惑,因为-c标志应该创建一个对象,不是吗?
如果我删除标志 openmp,我已经验证 gfortran 确实会创建目标文件
笔记:
mpif90 -v
gcc version 4.4.3
操作系统:Ubuntu 10.04.4 LTS