我的主目录中有本地生成的rpm
包(主包及其依赖项)。该spec
文件定义了依赖关系。我想使用单个yum
或dnf
命令来安装它,并让它在我的目录中找到依赖项并相应地安装它们。我试过yum
:
% yum -y localinstall ~/rpms/mypackage-2.1.1-2.1.x86_64.rpm
然而它抱怨:
Error:
Problem: conflicting requests
- nothing provides mypackage-libs(x86-64) = 2.1.1-2.1 needed by mypackage-2.1.1-2.1.x86_64
(try to add '--skip-broken' to skip uninstallable packages or '--nobest' to use not only best candidate packages)
我是否做错了什么,或者这表明我的文件中有错误spec
?
答案1
localinstall
不会自动从文件夹中选择其他 RPM,它会尝试仅安装命令中指定的软件包(并且它还会安装依赖项,但仅来自系统存储库),因此您需要列出所有软件包或使用 shell 扩展:
yum -y localinstall ~/rpms/mypackage-2.1.1-2.1.x86_64.rpm ~/rpms/mypackage-libs-2.1.1-2.1.x86_64.rpm
yum -y localinstall ~/rpms/*.rpm
(dnf
只需使用dnf install
和 路径而不是localinstall
)。