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

问题描述 投票:0回答:1

libboost_mpi.so.1.65.1位于/ home / batuhan / usr / lib下,你可以看到enter image description here

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

我怎么能克服这一点,我花了好几个小时试图解决这个错误,但似乎没有任何工作。

ubuntu boost mpi
1个回答
0
投票

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

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

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

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

-env <name> <value>

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

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

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

ldd <executable>

希望有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.