yum“事务检查错误”指向不存在的文件

yum“事务检查错误”指向不存在的文件

我正在尝试安装 boost148 包。这是一个独立于 boost 的包,我已安装 boost,版本为 1.41。

yum install boost
Loaded plugins: refresh-packagekit, security
Setting up Install Process
Package boost-1.41.0-18.el6.x86_64 already installed and latest version
Nothing to do

但是当我尝试使用安装 Boost148 时,yum install boost148 -y收到以下信息

Transaction Check Error:
  file /usr/lib64/libboost_chrono-mt.so.1.48.0 from install of boost148-chrono-1.48.0-7.el6.x86_64 conflicts with file from package boost-chrono-1.48.0-14.el6.x86_64
  file /usr/lib64/libboost_chrono.so.1.48.0 from install of boost148-chrono-1.48.0-7.el6.x86_64 conflicts with file from package boost-chrono-1.48.0-14.el6.x86_64
  file /usr/lib64/libboost_date_time-mt.so.1.48.0 from install of boost148-date-time-1.48.0-7.el6.x86_64 conflicts with file from package boost-date-time-1.48.0-14.el6.x86_64
  file /usr/lib64/libboost_date_time.so.1.48.0 from install of boost148-date-time-1.48.0-7.el6.x86_64 conflicts with file from package boost-date-time-1.48.0-14.el6.x86_64

因此我检查了 boost148 是否已部分安装

yum list installed | grep boost148

沒有任何顯示。

另外,如果我尝试对事务检查错误中的任何文件执行 ls 操作,则它们不存在。

# ls /usr/lib64/libboost_chrono-mt.so.1.48.0
ls: cannot access /usr/lib64/libboost_chrono-mt.so.1.48.0: No such file or directory

我认为这是某种 yum 数据库问题,所以我做了 ayum-complete-transaction和 a,yum clean all但仍然无法安装 boost145 包。有什么想法可以说服 yum 继续安装吗?

评论中要求的信息

@ 孟加拉

$yum repolist all Loaded plugins: refresh-packagekit, security repo id repo name status adobe-linux-i386 Adobe Systems Incorporated enabled: 2 elrepo ELRepo.org Community Enterprise Linux Reposi enabled: 304 elrepo-extras ELRepo.org Community Enterprise Linux Extras disabled elrepo-kernel ELRepo.org Community Enterprise Linux Kernel disabled elrepo-testing ELRepo.org Community Enterprise Linux Testin disabled epel Extra Packages for Enterprise Linux 6 - x86_ enabled: 11,750 epel-debuginfo Extra Packages for Enterprise Linux 6 - x86_ disabled epel-source Extra Packages for Enterprise Linux 6 - x86_ disabled epel-testing Extra Packages for Enterprise Linux 6 - Test disabled epel-testing-debuginfo Extra Packages for Enterprise Linux 6 - Test disabled epel-testing-source Extra Packages for Enterprise Linux 6 - Test disabled rpmforge RHEL 6.5 - RPMforge.net - dag enabled: 4,718 rpmforge-extras RHEL 6.5 - RPMforge.net - extras disabled rpmforge-testing RHEL 6.5 - RPMforge.net - testing disabled sl Scientific Linux 6.5 - x86_64 enabled: 6,524 sl-debuginfo Scientific Linux Debuginfo enabled: 10,255 sl-fastbugs Scientific Linux 6.5 - x86_64 - fastbug upda enabled: 1,016 sl-security Scientific Linux 6.5 - x86_64 - security upd enabled: 2,377 sl-source Scientific Linux 6.5 - Source disabled sl-testing Scientific Linux Testing - x86_64 disabled sl-testing-source Scientific Linux Testing - Source disabled repolist: 36,946

@迈克尔·汉普顿

rpm -qi boost-chrono
Name        : boost-chrono                 Relocations: (not relocatable)
Version     : 1.48.0                            Vendor: (none)
Release     : 14.el6                        Build Date: Mon 03 Jun 2013 04:20:53 AM EDT
Install Date: Fri 06 Nov 2015 03:09:26 PM EST      Build Host: localhost
Group       : System Environment/Libraries   Source RPM: boost-1.48.0-14.el6.src.rpm
Size        : 628796                           License: Boost and MIT and Python
Signature   : RSA/SHA1, Mon 03 Jun 2013 05:01:38 AM EDT, Key ID fcc2e6fe304dba4d
Packager    : .sroycode
URL         : http://www.boost.org
Summary     : Run-Time component of boost chrono library
Description :

Run-Time support for Boost.Chrono, a set of useful time utilities.

答案1

您的系统上确实有几个有冲突的软件包:boost-chronoboost-date-time由(不管他是谁)提供的.sroycode。我不知道这些软件包是怎么出现在您的系统上的,因为 .sroycode 的存储库似乎不在已安装存储库列表中。

要解决该问题,请删除这些包,然后再次尝试安装。

yum remove boost-chrono-1.48.0-14.el6.x86_64 boost-date-time-1.48.0-14.el6.x86_64

(如果这显示需要删除其他包,那么您可能首先知道为什么它们存在。)

相关内容