更新到 Mac Big Sur 后,Mpif90 无法正确编译

Mpif90 does not compile properly after updating to Mac Big Sur

我最近升级到 Big Sur,但在 运行 mpi 上遇到了代码问题。我是运行一个测试代码,命令如下:

mpif90 -o test.f90 ./test

我收到以下错误:

-bash: mpif90: command not found

我已经更新了 homebrew 和 macports 仍然无法解决问题。我怀疑它与某处不正确的路径名有关。有任何想法吗?谢谢。

@Oo.oO 谢谢。通过以下命令配置 gcc 的构建时(根据评论中的 link):

 ../configure --prefix=$HOME/opt/usr/local/gcc/gcc-9.2.0 \
 --enable-checking=release \
 --enable-languages=c,c++,fortran \
 --disable-multilib \
 --with-sysroot=$HOME/opt/usr/local/gcc_system_root \
 --program-suffix=-9.2.0

出现以下错误:

 configure: error: in `$HOME/opt/src/gcc/gcc-9.2.0/build':
 configure: error: C compiler cannot create executables

我已经更新了 Xcode(版本 12.3)。有什么想法吗?谢谢。

问题是其他 /bin/ 目录有旧版本的 gcc 和 openmpi。更新时,需要将 /lib/ 目录中的新文件传输到 /Cellar/ 目录。当第一次卸载所有旧的 macports 和编译器时,问题已解决,文件 and/or 路径不正确,如 sudo port -fp uninstall installedbrew uninstall openmpibrew uninstall gcc。然后重新安装新的自制编译器 brew install gccbrew install openmpi。这会在提交 make 文件时提供配置文件的正确路径,或者在本例中使用 mpif90 命令。