更新到 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 installed
、brew uninstall openmpi
和 brew uninstall gcc
。然后重新安装新的自制编译器 brew install gcc
、brew install openmpi
。这会在提交 make 文件时提供配置文件的正确路径,或者在本例中使用 mpif90
命令。
我最近升级到 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 installed
、brew uninstall openmpi
和 brew uninstall gcc
。然后重新安装新的自制编译器 brew install gcc
、brew install openmpi
。这会在提交 make 文件时提供配置文件的正确路径,或者在本例中使用 mpif90
命令。