ceph编译_Ceph编译:L版本及其之后的版本
Ceph編譯:L版本及其之后的版本。
1. 編譯前準(zhǔn)備
下載代碼庫(kù)
git clone git://github.com/ceph/ceph.git all
或者
git clone --recursive https://github.com/ceph/ceph.git
假如想看v13.2.2的代碼
只clone一個(gè)分支的:
git clone -b v10.2.5 --single-branch git://github.com/ceph/ceph.git single
如果想看v13.2.2分支最后提交的代碼:
git clone -b v10.2.5 --single-branch --depth 1 git://github.com/ceph/ceph.git singledep1
使用install-deps.sh解決編譯過(guò)程中的依賴。首先要解決install-deps執(zhí)行個(gè)安裝依賴包很慢的問(wèn)題:
提前準(zhǔn)備好eple:
yum install http://mirrors.aliyun.com/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
rm -rf /etc/yum.repos.d/epel*
裝完了刪除,這個(gè)是為了繞過(guò)包驗(yàn)證
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
刪除慢速的 aliyuncs:
sed -i '/aliyuncs/d' /etc/yum.repos.d/epel.repo
install-deps.sh第72行的需要修改需要修改成aliyun的:
sed -i 's/https:\/\/dl.fedoraproject.org\/pub\//https:\/\/mirrors.aliyun.com\//g' install-deps.sh
同時(shí)還要將
$SUDO yum install --nogpgcheck -y epel-release
注釋掉,否則還是會(huì)安裝fedoraproject的epel。
2. 開(kāi)始編譯
2.1
社區(qū)已經(jīng)考慮到Centos下的gcc、cmake版本比較低,不支持C++17,因此在install-deps.sh中處理:
yum install centos-release-scl
yum install devtoolset-7
scl enable devtoolset-7 bash
也可以選擇安裝devtoolset-8
這樣,就可以使用高版本的cmake和gcc了。也就是使用的開(kāi)發(fā)環(huán)境,不影響機(jī)器上的運(yùn)行g(shù)cc、cmake版本。
2.2 修改do_cmake.sh
注釋掉原來(lái)的命令,如下:
#cmake -DBOOST_J=$(nproc) $ARGS "$@" ..
添加新的cmake命令參數(shù):
cmake -DCMAKE_C_FLAGS="-O0 -g3 -gdwarf-4" -DCMAKE_CXX_FLAGS="-O0 -g3 -gdwarf-4" -DBOOST_J=$(nproc) $ARGS "$@" ..
解釋以上參數(shù)的含義:
CMAKE_C_FLAGS=“-O0 -g3 -gdwarf-4” : c 語(yǔ)言編譯配置
CMAKE_CXX_FLAGS=“-O0 -g3 -gdwarf-4” :c++ 編譯配置
-O0 : 關(guān)閉編譯器的優(yōu)化,如果沒(méi)有,使用GDB追蹤程序時(shí),大多數(shù)變量被優(yōu)化,無(wú)法顯示, 生產(chǎn)環(huán)境必須關(guān)掉
-g3 : 意味著會(huì)產(chǎn)生大量的調(diào)試信息
-gdwarf-4 : dwarf 是一種調(diào)試格式,dwarf-4 版本為4
進(jìn)入ceph源碼的目錄執(zhí)行
bash do_cmake.sh
這個(gè)步驟會(huì)創(chuàng)建一個(gè)叫build的目錄。
進(jìn)入到build目錄
cd build
執(zhí)行cmake . -LH ?查看下ceph有哪些編譯選項(xiàng),根據(jù)自己的需要來(lái)選擇
執(zhí)行
cmake .. -DWITH_LTTNG=OFF -DWITH_RDMA=OFF -DWITH_FUSE=OFF -DWITH_DPDK=OFF -DCMAKE_INSTALL_PREFIX=/usr
執(zhí)行make –j8編譯源碼
執(zhí)行make install編譯安裝源碼
生成vstart腳本:
cd build
make vstart
總結(jié)
以上是生活随笔為你收集整理的ceph编译_Ceph编译:L版本及其之后的版本的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 开源 python_8款Python G
- 下一篇: jquery 获取某个值得键名_jQue