我正在尝试在 Centos7 中安装 ContextBroker:
sudo rpm -i contextBroker-0.14.1-1.X86_64.rpm
但我收到下一个错误:
error: Failed dependencies:
libboost_filesystem-mt.so.5()(64bit) is needed by contextBroker-0.14.1-1.x86_64
libboost_system-mt.so.5()(64bit) is needed by contextBroker-0.14.1-1.x86_64
libboost_thread.so.5()(64bit) is needed by contextBroker-0.14.1-1.x86_64
到目前为止,我认为解决方案很清楚,让我们安装:
sudo yum install boost boost-devel boost-doc
但它不起作用,Centos7 给了我同样的错误。
然后我认为这可能是因为需要静态版本,因为错误与 libboost 相关而不是直接提升(我不知道这是否是一个好的假设),但我尝试了它并没有运行,Centos7 给了我同样的错误。
问题是我能够找到这些文件,但我不知道如何为 rpm 提供依赖项,以防万一我尝试安装以下软件包:
sudo rpm -i boost-1.53.0-18.el7.x86_64.rpm
但是为了能够安装以下两个包,我必须使用 yum 安装 boost-devel,因为当我尝试安装包 boost-devel.1.53.0-18.el7.x86_64.rpm 时,我错过了很多依赖关系。
sudo rpm -i boost-static-1.53.0-18.el7.i686.rpm
(编辑。扩展名 .i686 是 32 位的,所以不需要这个包。)
sudo rpm -i boost-static-1.53.0-18.el7.x86_64.rpm
结果是一样的..所以我有两个问题:
1.有人可以告诉我名字或传递我缺少的 boost rpm 的链接,这不允许我直接从 rpm 安装 boost-devel。
2.在Centos7中安装所有boost rpm包的正确顺序是什么?
谢谢!!
编辑: 我发现我系统中文件的扩展名以 .so.1.53.0 结尾,而 rpm 要求的依赖项以 .so.5()(64bit) 结尾。可能是 rpm 正在寻找特定版本的依赖项吗?