有人能告诉我为什么当我尝试安装一个用这个规范文件构建的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。
发布于 2020-06-07 21:21:49
正如@danilavershinin在评论中所说的那样:如果系统上安装的软件包已经满足了这些依赖性,则不需要安装任何东西。要检查这一点,您可以运行:
rpm -q --whatprovides bash查询哪个包满足该依赖关系(对于所有其他依赖关系也是如此)。
逗号、空格或换行符并不会真正改变行为。
然而,AutoReq是不同的:假设您打包了一个perl脚本,那么rpmbuild将自动添加对perl的依赖。
https://stackoverflow.com/questions/62237500
复制相似问题