使用rpmbuild对ceph的源码包进行重新打包
進(jìn)入ceph源碼包下載ceph相關(guān)的rpm包和tar包
我們下載的是ceph-12.1.1-0.el7.src.rpmceph L版本的rpm包
執(zhí)行命令rpmbuild --rebuild ceph-12.1.1-0.el7.src.rpm
等待它執(zhí)行到configuring done之后就強(qiáng)行終止
-- Found cython
-- Performing Test HAS_VTA
-- Performing Test HAS_VTA - Success
-- Check if the system is big endian
-- Searching 16 bit integer
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian
-- Found PythonInterp: /bin/python2.7 (found version "2.7.5")
-- exclude following files under src: *.js;*.css;civetweb;erasure-code/jerasure/jerasure;erasure-code/jerasure/gf-complete;rocksdb;googletest;spdk;xxHash;isa-l;lua;Beast;boost;dpdk;zstd;crypto/isa-l/isa-l_crypto;blkin;rapidjson
-- Configuring done
會(huì)在當(dāng)前用戶目錄下生成一個(gè)rpmbuild文件夾,該文件夾的目錄層級(jí)如下
BUILD BUILDROOT RPMS SOURCES SPECS SRPMS
此時(shí)在SOURCES目錄下存放的是該版本的ceph源碼包ceph-12.1.1.tar.bz2,如果完全執(zhí)行完rpmbuild --rebuild命令,那么RPMS存放的是這個(gè)版本Ceph所有的rpm包,BUILD存放解壓后的源碼文件夾,SPECS存放源碼編譯以及打包的規(guī)則文件ceph.spec文件,SRPMS文件夾存最終重新打包的源碼二進(jìn)制rpm包文件ceph-12.2.1-0.el7.centos.src.rpm(該文件可以執(zhí)行用rpm -i 執(zhí)行,生成rpmbuild文件夾)
綜上,如果我們對(duì)自己源碼有改動(dòng),則只需要進(jìn)入SORUCES文件夾下,使用tar jxvf ceph-12.1.1.tar.bz2解壓該源碼包,將自己代碼合入之后再執(zhí)行tar jcvf ceph-12.1.1.tar.bz2 ceph-12.1.1再次執(zhí)行壓縮該文件
最后進(jìn)入SPECS文件夾下,執(zhí)行rpmbuild -ba ceph.sepc重新構(gòu)建Ceph的源碼包(SRPMS目錄下)和二進(jìn)制軟件包(RPMS目錄下)。
總結(jié)
以上是生活随笔為你收集整理的使用rpmbuild对ceph的源码包进行重新打包的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: “密如飘玉屑”下一句是什么
- 下一篇: 关于OSD::mkfs: ObjectS