我想在包中包含一个文件,其中包含一个依赖于系统的目录。
我用
%define completions_dir "%( pkg-config --variable=completionsdir bash-completion )"例如,我可以成功地使用它
%install
make DESTDIR=${RPM_BUILD_ROOT}%{nagiospluginsdir} MANDIR=${RPM_BUILD_ROOT}%{_mandir} COMPLETIONDIR=${RPM_BUILD_ROOT}%{completions_dir} install问题是当我必须定义文件列表时
文件就在那儿。以下作品
%files
/usr/share/bash-completion/completions/check_ssl_cert如果我使用变量
%files
%{completions_dir}/check_ssl_cert我得到以下错误:
RPM build errors:
More than one file on a line: /check_ssl_cert来调试我尝试过的
%files
/%{completions_dir}/check_ssl_cert
%endif在这种情况下我得到
File not found: /root/rpmbuild/BUILDROOT/nagios-plugins-check_ssl_cert-2.20.0-0.fc35.x86_64/"/usr/share/bash-completion/completions"/check_ssl_cert路径是正确的,但引号是一个问题。
如何使用用宏定义的路径包括文件?
发布于 2022-02-03 20:07:13
即使%{completions_dir}只是目录,通过
%files
%{completions_dir}执行此工作(该文件包含在RPM中)
https://unix.stackexchange.com/questions/689151
复制相似问题