C++ 运行时缺少Boost库(可以编译。不能运行)

C++ 运行时缺少Boost库(可以编译。不能运行),c++,boost,shared-libraries,C++,Boost,Shared Libraries,这是一个相当初级的问题,但我似乎找不到任何相关的答案 我可以使用以下命令编译没有问题: g++ client.cpp -o client -lboost_system -lpthread 当我尝试运行该程序时,出现以下错误: ./client ./client: error while loading shared libraries: libboost_system.so.1.58.0: cannot open shared object file: No such file or dir

这是一个相当初级的问题,但我似乎找不到任何相关的答案

我可以使用以下命令编译没有问题:

g++ client.cpp -o client -lboost_system -lpthread
当我尝试运行该程序时,出现以下错误:

./client 
./client: error while loading shared libraries: libboost_system.so.1.58.0: cannot open shared object file: No such file or directory
此文件存在:/usr/local/lib/libboost\u system.so


我做错了什么?

应该是链接错误

尝试编译它并首先创建.o文件

g++-C.cpp//这里您需要提到库中的includes-我

然后创建可执行文件

g++-O//这里您需要提到库的路径-l


如果您的程序是正确的,它将创建exe,否则它将显示错误。如果链接错误,请尝试在程序中正确包含.h和lib路径。

您必须设置查找共享对象的路径,命令LD\u LIBRARY\u path=path where shared object is将执行此操作。我猜文件在某个地方,否则链接会失败。

我并没有机会测试你们的答案。升级到Ubuntu15.04,同时排除了另一个不相关的问题,也解决了这个问题


无论如何,谢谢。

安装了错误的版本
libboost\u system.so.1.58.0
指定了一个版本,而您的
/usr/local/lib/
文件没有指定版本。您可以编译
客户端
,但可以运行
/cilent
。我也要检查一下