rpmbuild:错误:找到已安装(但未打包)的文件解决方案
我正在尝试构建nginx服务器的RHEL 6 rpm。
但是,出现以下错误:
+ /usr/lib/rpm/brp-strip-comment-note
Checking for unpackaged file(s): /usr/lib/rpm/check-files /root/rpmbuild/BUILDROOT/nginx-1.0.5-1.el6.x86_64
error: Installed (but unpackaged) file(s) found:
/usr/local/nginx/conf/fastcgi.conf
/usr/local/nginx/conf/fastcgi.conf.default
…
….
.
/usr/local/nginx/html/50x.html
/usr/local/nginx/html/index.html
/usr/local/nginx/sbin/nginxRPM build errors:
Installed (but unpackaged) file(s) found:
/usr/local/nginx/conf/fastcgi.conf
/usr/local/nginx/conf/fastcgi.conf.default
…
..
.
/usr/local/nginx/html/50x.html
/usr/local/nginx/html/index.html
/usr/local/nginx/sbin/nginx
如何解决此问题并生成rpm文件?
要解决此错误,您需要指定将要安装的文件列表。
这是通过%files部分完成的。
语法如下:
%files %defattr(-,root,root,-) /path/to/dir/ /path/to/file/
可以在.spec文件中将上述文件设置如下(在%changelog之前添加):
%files %defattr(-,root,root,-) %config(noreplace) /usr/local/nginx/conf/* /usr/local/nginx/html/ /usr/local/nginx/sbin/nginx
%files部分标识软件包添加了哪些文件和目录。
保存并关闭文件。
现在,您可以按以下方式重建rpm:
$ rpmbuild --bb nginx.spec