[英]How to install rpm and dependencies on RHEL?
我正在尝试在我的 RHEL EC2 服务器上安装python3-gnupg 。
我使用了命令
wget https://download.fedoraproject.org/../python-gnupg-0.4.6-1.fc32.src.rpm
sudo rpm -i file.rpm
获取错误
error: Failed dependencies:
python(abi) = 3.8 is needed by python3-gnupg-0.4.6-1.fc32.noarch
rpmlib(PayloadIsZstd) <= 5.4.18-1 is needed by python3-gnupg-0.4.6-1.fc32.noarch
如何一次下载和安装所有依赖项?
您可能想要使用 dnf 或 yum(如果 dnf 由于某种原因不可用)来安装 package 而不是 rpm 命令。
为什么? 因为它实际上会下载依赖项。 rpm 命令没有像 yum 或 dnf 这样的“远程存储库”,因此它无法下载缺少的依赖项。
dnf 命令:
sudo dnf install https://download.fedoraproject.org/../python-gnupg-0.4.6-1.fc32.src.rpm
yum 命令:
sudo yum install https://download.fedoraproject.org/../python-gnupg-0.4.6-1.fc32.src.rpm
(您可以将 URL 替换为 RPM 文件的路径,并且您需要将 URL 替换为正确的路径)
实际上,它需要一个固定版本的 python(3.8 版本),而 dnf/yum 可能会拒绝安装一个。
您有两种方法可以解决此问题。
第一种方式
直接从 RHEL repo 安装 python3-gnupg package (如果可用,我不太确定)直接安装正确的依赖项(以及与您的发行版相对应的版本,获得 RHEL 测试祝福)
所以你可以试试
sudo dnf install python3-gnupg
或者
sudo yum install python3-gnupg
第二种方式
尝试安装对应版本的python。 使用 dnf 或 yum。
sudo dnf install python3.8
或者
sudo yum install python3.8
恕我直言,第一个解决方案更好,因为您实际上会获得官方RHEL 版本的python3-gnupg ,该版本已为您的发行版构建并进行了相应的测试。 但它可能不可用。 我实际上在我的 Fedora 33 上测试了这些命令,因为它使用与 RHEL 相同的工具,但它的 dnf/yum 存储库实际上是不同的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.