[英]Intel OneAPI 2022 - libimf.so No such file or directory - during openMPI compilation
嘗試使用 intel oneapi 2022.0.1 編譯器編譯 openmpi 操作系統是 5.4.0-26-generic #30-Ubuntu SMP Mon Apr 20 16:58:30 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
我得到了如下的英特爾編譯器(只是為了確保我在那一步沒有搞砸任何事情)
sudo add-apt-repository "deb https://apt.repos.intel.com/oneapi all main"
sudo apt install intel-basekit
sudo apt install intel-hpckit
使用以下命令配置 openmpi:
./configure --prefix=${HPCX_HOME}/ompi-icc CC=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/icc CXX=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/icpc F77=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort FC=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort --with-ucx=/usr --with-platform=contrib/platform/mellanox/optimized
my.bashrc 有(root 有相同的.bashrc)
source /opt/intel/oneapi/setvars.sh
export LD_LIBRARY_PATH=/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin
配置后我做: sudo make all install 並得到以下錯誤:
ld: /opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/../../bin/intel64/../../lib/icx-lto.so: error loading plugin: libimf.so: cannot open shared object file: No such file or directory
這個新版本的 oneAPI 沒有 ifortvars.sh,過去似乎已經解決了其他人的類似問題。
libimf.so 位於:
/opt/intel/oneapi/itac/2021.5.0/bin/rtlib/libimf.so
/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin/libimf.so
/opt/intel/oneapi/intelpython/python3.9/pkgs/intel-cmplr-lib-rt-2022.0.1-intel_3633/lib/libimf.so
/opt/intel/oneapi/intelpython/python3.9/lib/libimf.so
/opt/intel/oneapi/intelpython/python3.9/envs/2022.0.1/lib/libimf.so
任何有關使用最近的英特爾編譯器編譯 openmpi 的幫助和/或建議將不勝感激。
這是我找到的解決方案,但懷疑這是最優雅的方法:
操作系統是 5.4.0-26-generic #30-Ubuntu SMP Mon Apr 20 16:58:30 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
my.bashrc 有(root 有相同的.bashrc)
source /opt/intel/oneapi/setvars.sh
在/etc/ld.so.conf.d/
中創建 intel_libs.conf 並添加行/opt/intel/oneapi/compiler/2022.0.1/linux/compiler/lib/intel64_lin
這是libimf.so
所在的位置。
sudo ldconfig
使用 intel 編譯器編譯 openmpi 之后使用:
./configure --prefix={HPCX_HOME}/ompi-icc CC=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/icc CXX=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/icpc F77=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort FC=/opt/intel/oneapi/compiler/2022.0.1/linux/bin/intel64/ifort --with-ucx=/usr --with-platform=contrib/platform/mellanox/optimized
sudo make all
sudo make install
我希望這對其他人有所幫助,如果有更好的方法,請告訴我。 干杯
我也不完全面臨類似的問題。 我使用以下命令行安裝了新的 ifort:
wget https://registrationcenter-download.intel.com/akdlm/irc_nas/18236/l_BaseKit_p_2021.4.0.3422.sh
sudo bash l_BaseKit_p_2021.4.0.3422.sh
wget https://registrationcenter-download.intel.com/akdlm/irc_nas/18211/l_HPCKit_p_2021.4.0.3347.sh
sudo bash l_HPCKit_p_2021.4.0.3347.sh
source /opt/intel/oneapi/
中沒有名為setvars.sh的文件,在編譯任何 mpiifort 文件時,它也會向我拋出一個錯誤:
error loading plugin: libimf.so: cannot open shared object file: No such file or directory
甚至不確定,這是否與此線程有關,但任何進一步的指導都會非常有幫助,在此先感謝。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.