在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]