ceph 编译,搭建开发环境,代码 debug,修改源码后打包

本文介绍了如何在虚拟机上编译 Ceph 项目,包括安装依赖、使用 ccache 加速编译、通过 vstart 和 gdb 进行调试,以及如何修改源码后打包。详细步骤涵盖了从安装开发环境到代码调试的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1 前言:

2 在虚拟机上 clone 代码并编译

2-1 安装 ceph 编译环境用到的依赖包

2-2 安装 ccache 加速编译过程(此步骤非必须,选装 ccache 为了提高 ceph 编译速度)

2-3 下载 ceph 代码并编译

3 Windos 搭建开发环境

4 代码 DEBUG

4-1 使用 vstart 启动 ceph debug 环境

4-2 使用 gdb 对 ceph 源码进行跟踪调试

5 修改源码后打包


1 前言:

ceph 是一个庞大的项目,拥有百万行以上的代码量,复杂程度和开发成本颇高。

网上关于 ceph 开发的中文资料并不多,写这篇博客的初衷就是借助一个简单的例子,为新手提供一个 ceph 开发入坑攻略。

准备工作:

  • 准备一台虚拟机(有条件的可以直接上物理机),推荐配置200G硬盘,20核以上CPU,内存64G,ceph 代码编译过程需要占用大量磁盘空间和cpu资源。
  • 虚拟机需要联网,我这里使用的是 CentOS 8.2.2004 镜像。
  • 一台 windows 电脑,用于搭建开发环境。

 

2 在虚拟机上 clone 代码并编译

2-1 安装 ceph 编译环境用到的依赖包

yum -y install rdma-core-devel gcc-c++ systemd-devel keyutils-libs-devel openldap-devel leveldb-devel snappy-devel lz4-devel curl-devel nss-devel
yum -y install libzstd zstd gcc cmake make git wget

2-2 安装 ccache 加速编译过程(此步骤非必须,选装 ccache 为了提高 ceph 编译速度)

参考: https://github.com/ccache/ccache/blob/master/doc/INSTALL.md

# 下载安装包并解压
mkdir /home/ccache
cd /home/ccache
wget https://github.com/ccache/ccache/releases/download/v4.0/ccache-4.0.tar.gz
tar -zxvf ccache-4.0.tar.gz
cd ccache-4.0

# 编译安装
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release -DZSTD_FROM_INTERNET=ON ..
make
make install

# 修改配置
mkdir -p /root/.config/ccache/

# 添加如下配置:
vi /root/.config/ccache/ccache.conf
max_size = 25G
sloppiness = time_macros
run_second_cpp = true

2-3 下载 ceph 代码并编译

克隆 ceph 代码库
mkdir /home/ceph
cd /home/ceph
git clone https://github.com/ceph/ceph.git
cd ceph

切换到你需要的分支,笔者这里以 N 版本为例
git checkout nautilus

执行依赖安装脚本
./install-deps.sh

如果提示没有 libbabeltrace-devel ,添加如下 yum 源
[apt-mirror.front.sepia.ceph.com_lab-extras_8_]
name=created by dnf config-manager from http://apt-mirror.front.sepia.ceph.com/lab-extras/8/
baseurl=http://apt-mirror.front.sepia.ceph.com/lab-extras/8/
enabled=1
gpgcheck=0
然后 yum 安装 libbabeltrace-devel


如果报错 Problem: package python36-rpm-macros-3.6.8-2.module_el8.1.0+245+c39af44f.noarch conflicts with py
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值