Ceph Calamari Server RPM編譯

本文介紹如何使用redhat官方提供的源代碼rpm包編譯成Calamari Server二進制RPM軟件包。編譯過程很簡單,一條命令便可。這裏主要記錄下編譯過程出錯的解決辦法,但願能幫助有須要的朋友。
一、下載python

[root@hdp04 ~]#  wget http://ftp.redhat.com/pub/redhat/linux/enterprise/7Server/en/RHCEPH/SRPMS/calamari-server-1.5.7-1.el7cp.src.rpm

二、安裝依賴軟件linux

[root@hdp04 ~]#  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

三、安裝源代碼RPMgit

[root@hdp04 ~]#  rpm -i calamari-server-1.5.7-1.el7cp.src.rpm
執行完rpm命令,會在當前root家目錄生成rpmbuild文件夾,裏面包含了如下內容,以下圖所示:

Ceph Calamari Server RPM編譯
四、修改源文件,從新打包
這裏主要修改get-flavor.sh文件。sql

[root@hdp04 rpmbuild]# tar -xzf SOURCES/calamari-server_1.5.7.tar.gz
[root@hdp04 rpmbuild]# cd calamari-server-1.5.7

因我使用的系統爲Oracle Linux 7,因此在編譯的時候,當執行到get-flavor.sh命令時,會退出。由於此腳本里只有CentOS和RedHatEnterpriseServer,以下圖:
Ceph Calamari Server RPM編譯
將其更改爲如下內容:
Ceph Calamari Server RPM編譯
更改完成後,從新打包並替換掉SOURCES裏的calamari-server_1.5.7.tar.gz軟件包。python2.7

[root@hdp04 rpmbuild]# tar -czf calamari-server_1.5.7.tar.gz calamari-server-1.5.7
[root@hdp04 rpmbuild]# cp calamari-server_1.5.7.tar.gz SOURCES/

五、修改SPEC文件
註釋掉如下內容:ide

[root@hdp04 SPECS]# 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

六、執行rpmbuild編譯ui

[root@hdp04 SPECS]# rpmbuild -bb calamari-server.spec 
執行完成後,會在RPMS裏生成二進制rpm軟件包,以下圖所示:

Ceph Calamari Server RPM編譯

相關文章
相關標籤/搜索