加载共享库时出错:libboost_mpi.so.1.65.1:没有这样的文件或目录 - 即使文件在那里

Posted

技术标签:

【中文标题】加载共享库时出错:libboost_mpi.so.1.65.1:没有这样的文件或目录 - 即使文件在那里【英文标题】:error while loading shared libraries: libboost_mpi.so.1.65.1 : no such file or directory - even though the file is there 【发布时间】:2018-05-30 10:34:03 【问题描述】:

libboost_mpi.so.1.65.1 位于 /home/batuhan/usr/lib 下,如您所见enter image description here

但即使我提供库路径,我也无法运行我的程序,请参阅enter image description here

我该如何克服这个问题,我花了几个小时试图解决这个错误,但似乎没有任何效果。

【问题讨论】:

请编辑您的问题并复制/粘贴消息,这里没有屏幕截图。 【参考方案1】:

简答:将您的库路径也放入环境中:

export LD_LIBRARY_PATH=/home/batuhan/usr/lib:$LD_LIBRARY_PATH

我在这里假设你的计算节点之间有一个共享的主目录,即库文件在你的 MPI 进程执行的计算机上可用。

更多细节:您也可以使用-env 选项通过mpirun 传递它。选项的确切名称可能因您的 MPI 实现而异(尝试man mpirun)。

-env <name> <value>

如果您想在编译期间将库路径硬编码到可执行文件中,您可以使用链接器的 -rpath 选项,您可以通过以下方式在编译器调用中传递该选项:

mpic++ -Wl,-rpath -Wl,/home/batuhan/usr/lib <etc..>

您可以使用检查动态库的分辨率

ldd <executable>

希望对您有所帮助。

【讨论】:

以上是关于加载共享库时出错:libboost_mpi.so.1.65.1:没有这样的文件或目录 - 即使文件在那里的主要内容,如果未能解决你的问题,请参考以下文章

Rails:运行 wkhtmltopdf 时出错——(加载共享库时出错)

加载共享库时出错:libncurses.so.5:

加载共享库时出错,无法打开共享对象文件:没有这样的文件或目录(hiredis)

加载共享库时出错:libgmock.so:无法打开共享对象文件:没有这样的文件或目录

/usr/share/code/bin/../code:加载共享库时出错:libX11-xcb.so.1:无法打开共享对象文件:

加载共享库时出错:libgfortran.so.1:无法打开共享对象文件:没有这样的文件或目录