一个月前,我在this Stack Overflow answer之后在macOS Mojave上安装了Open MPI 4.0.1。
那时一切正常,我设法编译并运行hello.c和其他一些程序。
但是,当我今天尝试使用$HOME/opt/usr/local/bin/mpicc -o program_name ./program_name.c
编译任何程序时,即使这些文件位于该目录中,也会出现错误clang: error: no such file or directory: './program_name.c'
。
甚至对hello.c都不起作用。
但是当我尝试使用$HOME/opt/usr/local/bin/mpirun -np 4 hello
运行现有程序时(例如,您好)。
因此,我不明白如果mpi可以找到并运行现有程序,但无法编译同一目录中的文件,怎么会出现错误no such file or directory
。
我也尝试使用cd $HOME/opt/usr/local/bin
定位在该目录中,然后执行mpicc -o hello ./hello.c
,但随后出现错误-bash: mpicc: command not found
。
有人知道问题出在哪里以及如何解决吗?
答案 0 :(得分:0)
在遇到此类问题时,最好运行带有选项mpicc
的{{1}}。这样,您就可以查看背后执行的所有命令
-v
这样,您可以发现与编译器相关的问题。另外,请确保系统/ XCode升级后您的工具链没有更改。如果您是从源代码编译的MPI,则可能是在编译期间使用的内容与现在使用的内容之间存在一些差异。