我已经构建了两个 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/