我安装了oneAPI并设置了环境。mpiifort和ifor -V一样工作,它返回正确的编译器版本。
我正在尝试使用Intel编译器安装openmpi,这是CosmoMC所要求的。我是这样配置的:
./configure --prefix=/usr/local/ F77=/opt/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/ifort FC=/opt/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/ifort F90=/opt/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/ifort ICC=/opt/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/icc ICPC=/opt/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/icpc但在此之后,当我sudo make发生错误时。最近的情况是:
ifort: command line warning #10434: option '-nofor_main' use with underscore is deprecated; use '-nofor-main' instead
ld: /opt/intel/oneapi/compiler/2021.2.0/linux/bin/intel64/../../bin/intel64/../../lib/icx-lto.so: error loading plugin: libimf.so: cannot open shared object file: No such file or directory
make[2]: *** [Makefile:1903: libmpi_usempi_ignore_tkr.la] Error 1
make[2]: Leaving directory '/home/souvik/cosmology/openmpi-4.1.0/ompi/mpi/fortran/use-mpi-ignore-tkr'
make[1]: *** [Makefile:3555: all-recursive] Error 1
make[1]: Leaving directory '/home/souvik/cosmology/openmpi-4.1.0/ompi'
make: *** [Makefile:1901: all-recursive] Error 1我尝试过许多选项,比如声明路径等,但是没有什么解决办法。问题是即使在其他一些配置中我也避免了错误,但是mpif90 -V没有返回正确的Intel编译器版本。
发布于 2021-07-15 20:54:12
我最近正好碰到了这个错误。我正在通过sudo -E make install将openmpi安装到根用户拥有的目录中,如果您发布的错误消息发生故障,该目录将失败。我只能通过使用make install (没有sudo)安装到自己的目录来解决这个问题。我希望我知道为什么sudo -E不能在这种情况下工作。我仍然安装到我最初想要的目录,我只需要给它正确的权限。
https://askubuntu.com/questions/1329002
复制相似问题