[英]RPM “Requires” is ignored
誰能告訴我為什么當我嘗試安裝使用此規范文件構建的 RPM 時,“Requires”部分會被忽略?
Name: test
Version: 1.1
Release: 0
Summary: Test
Packager: Author
Group: Application/Other
License: GPL
URL: https://url.com
Source0: %{name}-%{version}.tar.gz
BuildArch: noarch
Requires: bash ncurses which jq curl tar
%description
This is a description
%prep
%setup -q
%build
%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/usr/bin
cp scripts/* $RPM_BUILD_ROOT/usr/bin/
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
# %dir /usr/bin
/usr/bin/mybin
%doc
當我執行yum install./myrpm.rpm
時,它只安裝本地 RPM,它不需要規范中指定的任何依賴項。 我也嘗試了逗號、不同的行,並添加了Autoreq: no
。
正如@danilavershinin 在評論中所說:如果系統上安裝的軟件包已經滿足了這些依賴關系,則無需安裝任何東西。 要檢查這一點,您可以運行:
rpm -q --whatprovides bash
查詢哪個 package 滿足該依賴項(所有其他依賴項相同)。
逗號、空格或換行符並不會真正改變行為。
但是AutoReq
有所不同:假設您 package 是 perl 腳本,那么rpmbuild
將自動添加對perl
的依賴。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.