上一篇通过源码实现有源码编译,那如果我们就想直接根据git生成rpm包呢,ceph社区提供了./make-dist可以根据git生成ceph-14.2.9.tar.bz2,根据这个文件可以制作rpm包了。
1. 安装必要依赖,比如rpm-build,和rpmdevtools工具
yum install rpm-build rpmdevtools -y
2. 设置RPM编译环境
rpmdev-setuptree
3. 提取规范文件
tar --strip-components=1 -C ~/rpmbuild/SPECS/--no-anchored -xvjf single/ceph-14.2.9.tar.bz2 "ceph.spec"
4. 开始构建rpm包
rpmbuild -ba ~/rpmbuild/SPECS/ceph.spec
小插曲:制作rpm包的时候遇到了一个磁盘空间不够用的bug,正好可以总结一篇虚机指定目录在线扩容的方法。
*当然如果已经编译好了,就可以跳过编译步骤(make-dist),直接制作rpm包
cd rpmbuild/BUILD/ceph-14.2.9/
将make-srpm.sh中./make-dist $1注释掉,只执行
rpmbuild -D"_sourcedir `pwd`" -D"_specdir `pwd`" -D"_srcrpmdir `pwd`" -bs ceph.spec
之后在该目录下,就有了ceph-14.2.9-0.el7.src.rpm
网友评论