【发布时间】:2011-06-10 08:33:28
【问题描述】:
简而言之...
C++ 程序(使用 boost 库)在 Eclipse 中编译良好,但运行时显示“加载共享库时出错:libboost_thread.so.1.46.1:无法打开共享对象文件:没有这样的文件或目录” .
详情
我正在 C++ 上运行一个基本程序,以检查我是否可以正确使用 boost 线程库。
#include <boost/thread/thread.hpp>
#include <iostream>
void hello ()
{
Std::cout<<”Hello, I am a thread”<<std::endl;
}
int main ()
{
boost::thread th1(&hello);
th1.join();
}
代码编译得很好,所以我相信我已经正确安装和设置了 boost 库(添加了目录以包含等)
但是,当我尝试运行该程序时,我在控制台中收到以下错误消息
error while loading shared libraries: libboost_thread.so.1.46.1: cannot open shared object file: No such file or directory
【问题讨论】:
-
您是否尝试在您的系统上找到 libboost_thread.so.1.46.1 文件?是否在搜索路径中?
-
libboost_thread.so.1.46.1 在我的系统上,我可以发现它没有问题。它也可以在库目录中使用。
-
您是否需要对共享库 (.so) 文件执行任何操作才能使 LD_LIBRARY_PATH 看到它们?