linux - 如何使 rpm 自动安装依赖项

我已经构建了两个 RPM 包

  • proj1-1.0-1.x86_64.rpm
  • libtest1-1.0-1.x86_64.rpm

proj1 取决于文件 libtest1.so 是否存在,它正确反射(reflect)在 RPM 包中,如下所示:

user@my-pc:~$ rpm -qp --requires proj1-1.0-1.x86_64.rpm
libtest1.so()(64bit)

user@my-pc:~$ rpm -qp --provides libtest1-1.0-1.x86_64.rpm
libtest1.so()(64bit)

proj1 安装失败,因为缺少依赖项。

user@my-pc:~$ rpm -ivh proj1-1.0-1.x86_64.rpm
error: Failed dependencies:
libtest1.so()(64bit) is needed by proj1-1.0-1.x86_64.rpm

如何确保 libtest1-1.0-1.x86_64.rpm 在安装过程中自动安装 proj1-1.0-1.x86_64.rpm的安装?

我确实尝试了带有 rpm -i--aid 选项,如 here 所述但它对我不起作用。

还有其他方法吗?

感谢您的帮助。

最佳答案

@gertvdijk 提供的链接显示了一种无需配置本地存储库即可实现所需结果的快速方法:

$ yum --nogpgcheck localinstall packagename.arch.rpm

只需将 packagename.arch.rpm 更改为您要安装的 RPM 文件名。

编辑澄清一下,这将自动安装所有已通过系统 YUM 存储库可用的依赖项。

如果您的依赖项由不在系统存储库中的其他 RPM 满足,则此方法将不起作用,除非每个 RPM 也与命令行中的 packagename.arch.rpm 一起指定。

https://stackoverflow.com/questions/13876875/

相关文章:

python - 修改刻度标签文本

python - 如何在 Python 中获取已排序数组的索引

python - 不可变与可变类型

c - GCC 的 __builtin_expect 在 if else 语句中的优势是什么?

linux - Bash:无限 sleep (无限阻塞)

python - 在 Python 中清除终端

python - 如何创建一个全部为 True 或全部为 False 的 numpy 数组?

linux - 获取图像尺寸(不是文件大小)的快速方法

linux - 如何从远程 SSH session 将数据发送到本地剪贴板

python - 如何保持 Python 脚本输出窗口打开?