加载共享的boost库时出错

Shw*_*eta 3 c++ linux boost shared-libraries

我正在研究中心.我在我的系统上安装了升级版本1.45.0.程序编译正确,但每当我键入命令查看输出时,它会给出以下错误:

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

wkl*_*wkl 5

你是如何安装boost库的?

您可能遇到的问题是链接器无法找到库,并且在构建程序时,您必须手动指定其他库路径来搜索库.

您可以做的快速修复是设置LD_LIBRARY_PATH包含boost线程库所在的目录:

export LD_LIBRARY_PATH=/path/to/boost/libs:$LD_LIBRARY_PATH

./runExecutable


Sam*_*ler 5

除了其他答案,您还可以DT_RPATH在链接可执行文件时设置elf标签

-Wl,-rpath,/path/to/boost/libraries -L /path/to/boost/libraries -lboost_whatever
Run Code Online (Sandbox Code Playgroud)

这样,您就不必记住设置LD_LIBRARY_PATH库是否安装在非标准位置。