在RHEL6中,新版的rpm使用了新的file digest algorithms 和 compression algorithms,所以当在RHEL6或centos6环境下编译RHEL5或centos5下使用的rpm包时,就会出现类似如下的错误
rpmlib(FileDigests) <= 4.6.0-1 is needed by package-23488-1.noarch
rpmlib(PayloadIsXz) <= 5.2-1 is needed by package-23488-1.noarch
查到解决办法如下
1,编辑/usr/lib/rpm/macros文件
#%_source_payload w9.gzdio
#%_binary_payload w9.gzdio
查找到上面这两行,将注释去掉改成
%_source_payload w9.gzdio
%_binary_payload w9.gzdio
2, 编辑/usr/lib/rpm/redhat/macros文件
%_source_filedigest_algorithm 8
%_binary_filedigest_algorithm 8
找到上面这两行,将其注释后变为
#%_source_filedigest_algorithm 8
#%_binary_filedigest_algorithm 8
然后找到如下这行
%_binary_payload w2.xzdio
将其注释后变为
#%_binary_payload w2.xzdio
依照上面两步进行修改后,在centos6或RHEL6下进行编译的RHEL5或centos5的rpm包,就可以很顺利的在RHEL5或centos5下安装了。
© 2012, 深夜的蚊子. 版权所有. 如转载,请注明:转载自 蚊子空间站[http://www.wenzizone.com]
本文介绍了解决在RHEL6环境中编译适用于RHEL5系统的rpm包时遇到的兼容性问题的方法。通过调整文件压缩及摘要算法设置,确保了rpm包能够顺利安装。
5947

被折叠的 条评论
为什么被折叠?



