私が直面した問題はここで解決されました: Loading shared library in open-mpi/ mpi-run
LD_LIBRARY_PATH
インストール自体が必要な -L 引数を指定している場合、設定または指定-x LD_LIBRARY_PATH
によって問題が修正される方法がわかりません。私のインストールは~/mpi/
コンパイルリンクの設定も含めました。
$ mpic++ -showme:version
mpic++: Open MPI 1.6.3 (Language: C++)
$ mpic++ -showme
g++ -I/home/vigneshwaren/mpi/include -pthread -L/home/vigneshwaren/mpi/lib
-lmpi_cxx -lmpi -ldl -lm -Wl,--export-dynamic -lrt -lnsl -lutil -lm -ldl
$ mpic++ -showme:libdirs
/home/vigneshwaren/mpi/lib
$ mpic++ -showme:libs
mpi_cxx mpi dl m rt nsl util m dl % Notice mpi_cxx here %
でコンパイルしmpic++ <file>
て実行するとmpirun a.out
、(共有ライブラリ) リンカ エラーが発生しました
error while loading shared libraries: libmpi_cxx.so.1:
cannot open shared object file: No such file or directory
を設定することでエラーが修正されましたLD_LIBRARY_PATH
。問題は、どのように、そしてなぜですか?私は何が欠けていますか?LD_LIBRARY_PATH
私のインストールが問題ないように見えるのに、なぜ必要なのですか。