rpmlib(payloadisxz) <= 5.2-1 is needed问题解决方法

本文详细介绍了如何通过下载并修改CentOS6.6 RPM源码包中的关键配置文件来解决RPM安装过程中遇到的问题。具体步骤包括下载对应版本的源码包、解压并修改配置文件,最后安装xz开发环境,重新编译生成可执行文件。此方法适用于遇到特定RPM安装问题时的调试和解决方案。

环境:

centOS 6.6 

使用rpm安装软件的时候出现这个问题。


分析:

有些bog对此问题有解决的方法,就是修改配置文件之类的,好像需要安装redhat-rpm-config文件,不过好像有时不管用。

今天下午调试了一遍rpm源码,终于找到了问题所在。


解决方法:

http://vault.centos.org/*.*/os/x86_64/Packages/ 下载对应rpm源码包(将*.*换成你的系统版本号,查看版本号指令:cat /etc/redhat-release)

$rpm2cpio rpm-*.*.*.src.rpm | cpio -ivd

之后会出现rpm-*.*.*.tar.bz文件夹,解压后进入目录。

修改一个重要参数

$vim config.h

找到

/* Define to 1 if you have the <lzma.h> header file. */
/* #undef HAVE_LZMA_H */
将其修改为

/* Define to 1 if you have the <lzma.h> header file. */
#define HAVE_LZMA_H 1

之后给系统安装xz开发环境

$sudo yum install xz-devel

阅读以下安装包的INSTALL文件进行./config 配置,之后make

duang~~~ 在.libs文件夹内有新生成的rpm执行文件了,试一试吧。

### 解决 RPM 包依赖问题及 NOKEY 警告 #### 检查依赖关系 通过以下命令可以检查 `glibc-devel-2.17-260.el7.x86_64.rpm` 的依赖关系: ```bash rpm -qpR glibc-devel-2.17-260.el7.x86_64.rpm ``` 此命令将列出所有需要满足的依赖项[^1]。例如,可能需要安装 `glibc` 或其他相关库的特定版本。 #### 安装 RPM 包并解决依赖问题 如果直接安装时遇到依赖问题,可以通过以下方法解决1. 使用 `yum` 或 `dnf` 安装 RPM 包,这些工具会自动解析并安装缺失的依赖项: ```bash yum localinstall glibc-devel-2.17-260.el7.x86_64.rpm ``` 或者: ```bash dnf install glibc-devel-2.17-260.el7.x86_64.rpm ``` 2. 如果无法使用在线工具(如在离线环境中),需要手动下载并安装所有依赖包。可以使用以下命令从在线系统中生成依赖列表,并将其下载到离线系统中: ```bash repoquery --requires --resolve glibc-devel-2.17-260.el7.x86_64.rpm ``` 3. 在离线环境中,按照依赖顺序逐一安装 RPM 包。确保先安装低层依赖,再安装高层依赖[^2]。 #### 处理 NOKEY 警告 NOKEY 警告通常出现在安装 RPM 包时,提示 GPG 密钥未导入或验证失败。以下是解决方法1. 导入正确的 GPG 密钥。例如,对于 CentOS 7 系统,可以运行以下命令导入官方密钥: ```bash rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 ``` 2. 如果 RPM 包来自非官方源,需要找到对应的 GPG 密钥文件并导入。例如: ```bash rpm --import path/to/gpg-key-file.asc ``` 3. 如果无法获取正确的 GPG 密钥,可以强制忽略签名验证进行安装: ```bash rpm -ivh --nodeps --nosignature glibc-devel-2.17-260.el7.x86_64.rpm ``` 注意:忽略签名验证可能会带来安全风险,仅在必要时使用[^3]。 #### 验证安装 安装完成后,可以通过以下命令验证是否成功安装 `glibc-devel`: ```bash rpm -q glibc-devel ``` --- ### 示例代码块 以下是一个完整的安装流程示例: ```bash # 检查依赖关系 rpm -qpR glibc-devel-2.17-260.el7.x86_64.rpm # 导入 GPG 密钥 rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 # 安装 RPMrpm -ivh glibc-devel-2.17-260.el7.x86_64.rpm # 验证安装 rpm -q glibc-devel ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值