我遇到的问题已经在这里解决了: Loading shared library in open-mpi/mpi-run
当我的安装本身指定必要的 -L 参数时,我不知道如何设置LD_LIBRARY_PATH
或指定-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
当我的安装看起来很好时需要。