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