rpmlib(PayloadIsLzma) <= 4.4.6-1 is needed

环境:

centos el5

背景:

由于个人比较喜欢用软件的最新版本,在重新安装服务器上的 xdg-open(还有yum等) 时,在https://rpmfind.net/linux/rpm2html/search.php?query=xdg-utils下载最近的 xdg-utils-20160610-3.1.noarch.rpm, 安装

rpm -ivh xdg-utils-20160610-3.1.noarch.rpm

然后报出下面一堆缺少的依赖包:
error: Failed dependencies:
perl-Net-DBus is needed by xdg-utils-20160610-3.1.noarch
perl-X11-Protocol is needed by xdg-utils-20160610-3.1.noarch
rpmlib(PayloadIsLzma) <= 4.4.6-1 is needed by xdg-utils-20160610-3.1.noarch

解决

试图从网上下载以上的包,并进行安装,发现以上包都是在比较低的系统版本中。

1, 在RHEL6中,新版的rpm使用了新的file digest algorithms 和 compression algorithms,所以当在RHEL6或centos6环境下编译RHEL5或centos5下使用的rpm包时,就会出现以上错误

2, 使用的软件版本不对。

后来下载使用 xdg-utils-1.0.2-1.el5.rf.noarch.rpm 能正常安装。此文件开发日期较早,对应当前电脑系统。

参考文章:
rpmlib(FileDigests),rpmlib(PayloadIsXz) is needed解决办法
http://www.wenzizone.cn/2012/09/27/how-to-fix-rpm-filedigests-payloadisxz-is-needed.html

你可能感兴趣的:(linux,linux,xdg-open)