SO:Ubuntu 17.04。直到昨天,MPI一切正常,然後出現了問題。該錯誤是標題上的錯誤,並且與mpirun -n[n] ./myprogram
一起運行。
以前歐泊與Libmpi.so.12錯誤,我無法解決這個問題,儘管我試圖表明我.bashrc
的LD_LIBRARY_PATH,在類似的問題在這裏提出。然後重新安裝OpenMPI,這個新的錯誤已經改變,我不知道如何解決它。實際上的apt-file search libmpi.so
結果是:MPI符號查找錯誤:opal_uses_threads
lam4-dev: /usr/lib/lam/lib/libmpi.so
libopenmpi-dev: /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so
libopenmpi2: /usr/lib/x86_64-linux-gnu/libmpi.so.20
libopenmpi2: /usr/lib/x86_64-linux-gnu/libmpi.so.20.0.2
libopenmpi2: /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so.20.0.2
而且ldd
回報:
linux-vdso.so.1 => (0x00007ffc415e5000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe717956000)
libmpi.so.12 => not found
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe717738000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe717371000)
/lib64/ld-linux-x86-64.so.2 (0x000055ccd14f4000)
所以,問題似乎仍然是libmpi.so.12?在重新安裝OpenMPI之前,libmpi.so.12在那裏,MPI找不到它,但在那裏。
[編輯]
which mpirun
回報:
/usr/bin/mpirun
而且apt-file search mpicc
回報:
lam4-dev: /usr/bin/mpicc.lam
lam4-dev: /usr/share/man/man1/mpicc.lam.1.gz
libmpich-dev: /usr/bin/mpicc.mpich
libmpich-dev: /usr/share/man/man1/mpicc.mpich.1.gz
libopenmpi-dev: /usr/bin/mpicc.openmpi
libopenmpi-dev: /usr/share/man/man1/mpicc.openmpi.1.gz
libsimgrid-dev: /usr/bin/smpicc
libsimgrid-dev: /usr/share/man/man1/smpicc.1.gz
mpich-doc: /usr/share/doc/mpich-doc/www1/mpicc.html
openmpi-common: /usr/share/openmpi/mpicc-wrapper-data.txt
openmpi-common: /usr/share/openmpi/mpicc.openmpi-wrapper-data.txt
我只是用'mpicc ...'編譯它。我怎樣才能用新安裝的Open MPI進行編譯? – Caramelleamare
確保'mpicc'是Open MPI提供的,然後從頭開始重新構建您的應用程序,這可能就足夠了。 –
請注意,你應該不需要任何東西在你的'.bashrc' –