在安装完anaconda后,发现无法使用mpif90编译.f90文件,问题如下:
在终端输入mpif90命令后,显示:
x86_64-conda_cos6-linux-gnu-gfortran:未找到命令
可能主要有以下两个:
1 环境变量设置:Conda会修改系统的环境变量,以便在其虚拟环境中正确定位已安装的软件包。这些环境变量包括PATH
、LD_LIBRARY_PATH
等。如果您在Conda环境中运行并行编译任务,它将继承这些环境变量设置,导致并行编译任务查找依赖项时从Conda环境中查找。
2 软件包路径:Conda将其虚拟环境安装在特定的目录中,通常位于Conda的安装目录下。这些虚拟环境包含了Conda环境中安装的软件包。并行编译任务通常会搜索系统的软件包路径以查找依赖项,而Conda环境中的路径可能会包含在这些搜索路径中。
解决方案主要有两个:
1 把conda中的mpi库补齐,这里不多赘述;
2 临时禁用Conda环境:在执行并行编译任务之前,您可以暂时禁用或取消激活Conda环境。 可以通过运行以下命令来取消激活Conda环境(一定要在编译文件所在文件夹终端中进行该 操作):
conda deactivate
随后就可以正常使用mpif90编译该程序了 。
编译完成之重新激活conda环境,
conda activate <your_environment_name>
<your_environment_name>即为conda的环境名或安装路径,查找方法如下:
打开终端,输入
conda env list
或
con info --envs
即可看到,conda的环境名或安装路径。