簡體   English   中英

Intel OneAPI 2022 - libimf.so 沒有這樣的文件或目錄 - 在 openMPI 編譯期間

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM