Python-devel yum 安装错误
Posted
技术标签:
【中文标题】Python-devel yum 安装错误【英文标题】:Python-devel yum install error 【发布时间】:2017-07-02 03:58:15 【问题描述】:python-devel 安装失败并附上消息
配置如下: - CentOS 7.2 - 已安装 Python 2.7
-
我按照输出中的建议使用 yum load 重新运行,但失败并显示相同的消息。
yum info python ==> 安装包 python 2.7.5 34.el7
yum info python-devel ==> 未安装。可用 2.7.5 48.el7
yum deplist python-devel ==> 依赖python2.7.5-48.el7
尝试使用“yum update python”安装 Python2.7.5-48.el7,但失败并显示与 python-devel install 相同的错误消息。
苏迪尔
yum install -y python-devel
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.sonic.net
* epel: ftp.linux.ncsu.edu
* extras: mirror.cogentco.com
* updates: www.gtlib.gatech.edu
Resolving Dependencies
--> Running transaction check
---> Package python-devel.x86_64 0:2.7.5-48.el7 will be installed
--> Processing Dependency: python(x86-64) = 2.7.5-48.el7 for package: python-devel-2.7.5-48.el7.x86_64
--> Running transaction check
---> Package python.x86_64 0:2.7.5-34.el7 will be updated
---> Package python.x86_64 0:2.7.5-48.el7 will be an update
--> Processing Dependency: python-libs(x86-64) = 2.7.5-48.el7 for package: python-2.7.5-48.el7.x86_64
--> Running transaction check
---> Package python-libs.x86_64 0:2.7.5-34.el7 will be updated
---> Package python-libs.x86_64 0:2.7.5-48.el7 will be an update
--> Finished Dependency Resolution
Dependencies Resolved
================================================= ================================== Package Arch 版本库大小
Installing:
python-devel x86_64 2.7.5-48.el7 base 393 k
Updating for dependencies:
python x86_64 2.7.5-48.el7 base 90 k
python-libs x86_64 2.7.5-48.el7 base 5.6 M
Transaction Summary
==============================================================================================================================================
Install 1 Package
Upgrade ( 2 Dependent packages)
Total size: 6.1 M
Downloading packages:
Running transaction check
ERROR with transaction check vs depsolve:
python(abi) = 2.6 is needed by (installed) python-argparse-1.2.1-2.1.el6.noarch
python(abi) = 2.6 is needed by (installed) redhat-upgrade-tool-1:0.7.22-3.el6.centos.noarch
** Found 5 pre-existing rpmdb problem(s), 'yum check' output follows:
epel-release-7-6.noarch is a duplicate with epel-release-7-5.noarch
grep-2.20-3.el6_7.1.x86_64 has missing requires of libpcre.so.0()(64bit)
python-argparse-1.2.1-2.1.el6.noarch has missing requires of python(abi) = ('0', '2.6', None)
1:redhat-upgrade-tool-0.7.22-3.el6.centos.noarch has missing requires of preupgrade-assistant >= ('0', '1.0.2', '4')
1:redhat-upgrade-tool-0.7.22-3.el6.centos.noarch has missing requires of python(abi) = ('0', '2.6', None)
Your transaction was saved, rerun it with:
yum load-transaction /tmp/yum_save_tx.2017-02-13.16-01.jUFBE4.yumtx
【问题讨论】:
您是否按照错误消息的提示重新运行它?请给我们适当的线索而不是错误转储。 1.我使用 yum load-transaction 重新运行,但失败并显示相同的错误消息 【参考方案1】:根据 yum 文档,这是处理 5 个错误的最安全方法:
运行后首先删除重复项并解决所有错误:
package-cleanup --cleandupes
如果上面有一个丢失的包清理错误,那么首先运行这个:
yum install yum-utils
然后解决其他 4 个错误:
yum reinstall grep-*
其中 grep-* 是错误消息中显示的包名称。我在上面的命令中用 * 缩写了 grep 版本名称的其余部分。
对指示为丢失的其他 3 个包重复上述命令。如果 yum 命令给你错误,那么试试这个包:
rpm -ivh --force grep-*
然后最后从原来的错误信息中重新运行 yum 命令。
在任何时候你想清理剩余的烂摊子,运行这个命令:
yum clean all
package-cleanup --problems
并按照指示进行操作。如需进一步参考,请使用
查找文档man yum.conf
【讨论】:
【参考方案2】:删除包 python-argparse 和 redhat-upgrade-tool。
然后做了一个 yum install python-devel ,这次成功了。我认为这两个包对旧的 python 2.6 有一个硬依赖。
苏迪尔·纳拉甘古
【讨论】:
【参考方案3】:问题是您使用的是 CentOS 7,但安装了 CentOS 6 软件包。
python-argparse-1.2.1-2.1.el6.noarch redhat-upgrade-tool-1:0.7.22-3.el6.centos.noarch获取所有已安装 el6 软件包 (rpm -qa | grep el6
) 的列表,然后将其删除或更新为 el7 等效项。您应该可以删除 argparse,因为它在 2.7 标准库中。
【讨论】:
以上是关于Python-devel yum 安装错误的主要内容,如果未能解决你的问题,请参考以下文章
Python - python-devel无法安装的问题解决方案