Ceph Calamari Server RPM编译
本文介绍如何使用redhat官方提供的源代码rpm包编译成Calamari Server二进制RPM软件包。编译过程很简单,一条命令即可。这里主要记录下编译过程出错的解决办法,希望能帮助有需要的朋友。1、下载
#wget http://ftp.redhat.com/pub/redhat/linux/enterprise/7Server/en/RHCEPH/SRPMS/calamari-server-1.5.7-1.el7cp.src.rpm
2、安装依赖软件
#yum -y install httpd python-setuptools python-virtualenv redhat-lsb-core cairo pycairo logrotate openssl sqlite checkpolicy selinux-policy-devel selinux-policy-doc rpm-build git python2-pip
3、安装源代码RPM
#rpm -i calamari-server-1.5.7-1.el7cp.src.rpm
执行完rpm命令,会在当前root家目录生成rpmbuild文件夹,里面包含了以下内容,如下图所示:
4、修改源文件,重新打包
这里主要修改get-flavor.sh文件。
# tar -xzf SOURCES/calamari-server_1.5.7.tar.gz
# cd calamari-server-1.5.7
因我使用的系统为Oracle Linux 7,所以在编译的时候,当执行到get-flavor.sh命令时,会退出。因为此脚本里只有CentOS和RedHatEnterpriseServer,如下图:
将其更改成以下内容:
更改完成后,重新打包并替换掉SOURCES里的calamari-server_1.5.7.tar.gz软件包。
# tar -czf calamari-server_1.5.7.tar.gz calamari-server-1.5.7
# cp calamari-server_1.5.7.tar.gz SOURCES/
5、修改SPEC文件
注释掉以下内容:
# vi calamari-server.spec
chmod -R go-w ${RPM_BUILD_ROOT}/opt/calamari/venv/lib/python2.7/site-packages/setuptools-0.9.8-py2.7.egg-info
6、执行rpmbuild编译
# rpmbuild -bb calamari-server.spec
执行完成后,会在RPMS里生成二进制rpm软件包,如下图所示:
页:
[1]