我正在学习使用增强日志,并且正在使用centOs7环境。
我在CentOS7上安装了boost-devel软件包,yum
从CentOS7 Base Repo下载了。安装后,我检查并发现增强日志标题和.so丢失。在互联网上浏览时,找到了CentOS特别兴趣小组的软件收藏库,并在mariadb rpm中找到了增强日志:
1. rh-mariadb102-boost-log.x86_64
2. rh-mariadb101-boost-log.x86_64
以上两种方法都提供了Boost日志,这取决于Boost 1.58的来源。但是基本的boost-devel软件包基于Boost 1.53源。
由于版本不匹配,可能会导致现有项目中出现很多错误,而我无法做到这一点。
请提出任何想法/建议。
还是完全可以从mariadb rpm使用boost库吗?
答案 0 :(得分:0)
经过大量分析,我找到了解决方案:
CentOs7基本/更新存储库不包含最新的Boost库rpm(不知道原因)。它们停留在Boost 1.53版本上,而Boost Log从1.54版本开始成为Boost框架工作的一部分。像mariadb和mongodb之类的其他软件包可能也有类似的问题,例如我自己,它们已经制作了自己的boost库rpm,并将其作为软件包的一部分。
要解决获取最新版本的Boost库的问题,我们必须将fedora base repo添加到我们的centos库中并获取最新的boost库,或者将epel repo添加到cent os repost中并获取最新的boost库。
当我通过添加fedora base repo来获得最新的加速rpm时,它失败了,并出现错误,指出os上与perl版本有关的其他依赖关系相互冲突且陈旧。因此,剩下的唯一选择就是从epel repo中获取它,并且效果很好。以下是添加epel回购并获得最新的Boost库的步骤:
第二步,验证信息。
参考: 在centos上安装epel repo:https://www.cyberciti.biz/faq/installing-rhel-epel-repo-on-centos-redhat-7-x/