我正在构建一个自定义 rpm 来安装 apache,等等。当我尝试构建时,我得到了上述错误,然后它列出了 /httpd-2.2.17/ 及其所有子文件。
据我所知,这是构建目录,因此不应打包。为了尝试解决这个问题,我添加了 rm -rf /httpd-2.2.17 但这似乎没有帮助。
我不想将它添加到 %files 部分,因为我们完成后不应将它们安装在系统上。
有人知道我在做什么错吗?
值得注意的是 apache 是第二个源文件,第一个是未编译的 tar 文件
听起来它不应该在那里..我不熟悉 Apache 构建过程,但我会检查构建标志(传递给 configure 或类似的东西,也许前缀出错了?)。
或者,尝试添加:
%exclude %{buildroot}/.../httpd-2.2.7
到文件部分作为解决方法。
最后,你可能已经这样做了,检查其他基于 RPM 的发行版做了什么,我想 Apache 不是一个微不足道的包..
不只是“rm -rf /httpd-2.2.7”,而是在规范文件的 %install 部分末尾附近尝试“rm -rf $RPM_BUILD_ROOT/httpd-2.2.7”。
https://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch09s05s07.html
你可以禁用法西斯构建,它只会给你一个包,不管你有什么额外的文件。取决于您对干净包构建的关注程度。