rpm包制作过程
1,下载源码包
2,安装rpm包制作工具:
# yum install rpmdevtools rpm-build gcc make wget openssl-devel krb5-devel pam-devel libX11-devel xmkmf libXt-devel initscripts imake
3,使用rpmdev-setuptree命令生成构建项目目录
# rpmdev-setuptree
会在用户家目录生成如下目录结构:
4,将下载的源码包放到SOURCES目录中
5,建立”名称”.spec文件,制作rpm包全靠它,源码包里可以获取,或者自己手动编写.spec文件。
6,在rpmbuild目录执行rpmbuild -ba SPECS/名称.spec开始制作:
# rpmbuild -ba SPECS/名称.spec
如果没有报错会一直持续个几分钟各种编译,直到制作完成。
在rpmbuild -ba时,如果遇到如下错误:
*** ERROR: No build ID note found in /home/wuyang/rpmbuild/BUILDROOT/******
error: Bad exit status from /var/tmp/rpm-tmp.BPd1OI (%install)
解决方法是在.spec文件中任意位置添加如下参数:
%define __debug_install_post \
%{_rpmconfigdir}/find-debuginfo.sh %{?_find_debuginfo_opts} “%{_builddir}/%{?buildsubdir}”\
%{nil}
在rpmbuild -ba时,如果遇到如下错误:
error: Installed (but unpackaged) file(s) found: ….
解决办法是找到 /usr/lib/rpm/macros 中
%__check_files /usr/lib/rpm/check-files %{buildroot}
找到后注释掉这行。