Centos7(ContexBroker)需要Boost-Libboost [英] Boost-Libboost is needed in Centos7 (ContexBroker)

查看:26
本文介绍了Centos7(ContexBroker)需要Boost-Libboost的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在 Centos7 中安装 ContextBroker:

I am trying to install ContextBroker in Centos7:

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

到目前为止,我认为解决方案很清楚,让我们安装:

Up to this point I thought that the solution was clear, lets install:

sudo yum install boost boost-devel boost-doc 

但它没有运行,Centos7 给了我同样的错误.

But it was not functioning and Centos7 was giving me the same error.

然后我虽然这可能是因为需要静态版本,因为错误与 libboost 相关而不是直接提升(我不知道这是否是一个好的假设),但我尝试了它并没有运行和 Centos7给了我同样的错误.

Then I though that maybe it was because the static versión was needed as the error is related to libboost and not directly boost ( I do not know if this was a good assumption),but I tried and it was not functioning and Centos7 was giving me the same error.

问题是我能够找到这些文件,但我不知道如何为 rpm 提供依赖项,以防万一我尝试安装以下软件包:

The thing is that I am able to find those files, but I dont know how to give dependencies to rpm and in case is not possible I tried to install the following packages:

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 时,我丢失了很多依赖.

However to be able to install the following two packages, I had to install boost-devel using yum, because when I tried to install the package boost-devel.1.53.0-18.el7.x86_64.rpm I was missing a lot of dependencies.

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

结果是一样的..所以我有两个问题:

The result was the same.. so I have two questions:

1. 谁能告诉我我所缺少的 boost rpm 的名称或链接,这不允许我直接从 rpm 安装 boost-devel.

1.Can someone tell me the name or pass me the link of the boost rpm that I am missing and that is not allowing me to install directly boost-devel from the rpm.

2.在Centos7中安装所有boost rpm包的正确顺序是什么?

2.Which one is the correct order to install all the boost rpm packages in Centos7?

谢谢!!

我发现我系统中文件的扩展名以 .so.1.53.0 结尾,而 rpm 要求的依赖项以 .so.5()(64bit) 结尾.可能是 rpm 正在寻找特定版本的依赖项吗?

I found that the extension of the files that are in my system end with .so.1.53.0, and the dependencies that the rpm is asking for end with .so.5()(64bit). Can it be that the rpm is looking for a specific version of the dependencies?

推荐答案

终于可以解决依赖问题了.

Finally I have been able to resolve the problem with the dependencies.

ContextBroker 依赖于 Centos 6 的旧 boost 包,因此要能够在 Centos7 中安装 ContextBroker,您必须从系统中删除最新版本的 boost(对我来说这个解决方案不是问题,因为在我的如果我使用 VM 只是为了能够独占使用 contextBroker,但这对于使用 Centos7 对应版本的 boost 的其他包的依赖关系可能是一个真正的问题):

ContextBroker is depending on the old packages of boost for Centos 6, so to be able to install ContextBroker in Centos7 you have to remove the newest versions of boost from the system (to me this solution was not a problem, because in my case I am using a VM just to be able to exclusively use contextBroker but this can be a real problem with the dependencies of other packages that are using the corresponding version of boost for Centos7):

sudo yum remove boost boost-devel boost-system boost-filesystem boost-thread

稍后需要下载和安装旧包:

Later it is needed the downloading and installation of the old packages:

sudo rpm -Uvh boost-thread-1.41.0-25.el6.x86_64.rpm
sudo rpm -Uvh boost-system-1.41.0-25.el6.x86_64.rpm
sudo rpm -Uvh boost-filesystem-1.41.0-25.el6.x86_64.rpm

然后可以安装ContextBroker:

And then is possible to install ContextBroker:

sudo rpm -i context-0.15.0-1.x86_64.rpm

我希望这对新的 contextBroker 用户有所帮助!

I hope this helps to the new contextBroker's users!

这篇关于Centos7(ContexBroker)需要Boost-Libboost的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆