16

我正在尝试从 REDHAT 6 系统上的二进制文件构建 RPM。我将所有文件都包含在%files( find /path/to/fake/install -type f >> specfile)部分中

当我跑步时,rpmbuild -bb specfile --target x86_64 我得到

Checking for unpackaged file(s): /usr/lib/rpm/check-files /path/to/rpmbuild/BUILDROOT/Package-1.0.0-1.el6.x86_64
error: Installed (but unpackaged) file(s) found:

RPM build errors:
    Installed (but unpackaged) file(s) found:

请注意,错误消息中未列出任何文件。我不确定出了什么问题,有什么想法吗?

4

3 回答 3

21

您可以通过使用忽略这些类型的错误

%define _unpackaged_files_terminate_build 0

也可以看看

于 2013-01-25T02:47:12.437 回答
11

我猜你的 /path/to/fake/install 不正确。

%files部分中的路径必须是最终安装文件的路径,例如/usr/local/bin/myprog. 在 rpm 构建期间,在该%build部分中,您需要确保将文件放在您在该%files部分中指定的相同位置,或者在您的规范文件中使用与列表匹配的子路径的buildroot选项rpmbuild和使用变量,在这个例子中。有关详细信息,请参阅http://www.rpm.org/max-rpm-snapshot/ch-rpm-anywhere.html$RPM_BUILD_ROOT%files$RPM_BUILD_ROOT/usr/local/bin/myprog

于 2012-11-16T16:12:05.790 回答
0

可能发生这种情况的一个示例:假设在该%post部分中有一个%install_info并且在该%postun部分中有一个关联的%install_info_delete。这需要在该%install部分中使用类似rm -f %{buildroot}/%{_infodir}/dir.

于 2020-10-30T13:00:08.280 回答