ceph源码编译遇到的问题(针对x86 centos)

源代码编译遇到的问题
一、./mos/ceph/configure遇到的问题
1、configure: error: cython not found:
yum install Cython
2、 configure: error: python-config not found:
yum install python-devel
3、configure: error: libsnappy not found:
下载snappy_1.1.3.orig.tar.gz
cd snappy-1.1.3/–》make–>make install
4、configure: error: libleveldb not found:
rpm -ivh leveldb-devel-1.12.0-11.el7.x86_64.rpm
rpm -ivh leveldb-1.12.0-11.el7.x86_64.rpm
5、configure: error: blkid/blkid.h not found (libblkid-dev, libblkid-devel):
yum localinstall libblkid-devel-2.23.2-59.el7_6.1.x86_64.rpm
6、configure: error: libudev.h not found (libudev-dev, libudev-devel):
yum install libudev-devel
7、configure: error: no suitable crypto library found:
1)rpm -ivh cryptopp-5.6.2-10.el7.x86_64.rpm
2)rpm -ivh cryptopp-devel-5.6.2-10.el7.x86_64.rpm
8、configure: error: no FUSE found (use --without-fuse to disable):yum install fuse fuse-devel
9、configure: error: no tcmalloc found (use --without-tcmalloc to disable):
yum install google-perftools-devel
10、configure: error: no libaio found:yum install libaio-devel
11、configure: error: no libatomic-ops found (use --without-libatomic-ops to disable):
yum install libatomic_ops-devel
12、configure: error: xfs/xfs.h not found (–without-libxfs to disable):
yum -y install xfsprogs-devel
13、configure: error: “Can’t find boost spirit headers”:
yum install boost-devel
14、configure: error: ldap.h not found (openldap-dev, openldap-devel):
yum install openldap-devel

编译configure指令:./configure --without-lttng --without-fuse --without-libatomic-ops --with-jemalloc --without-tcmalloc --without-libxfs --with-radosgw --with-cephfs=no --with-rbd=no --enable-server=no CXXFLAGS="-O0 -g" --prefix=/homerelease LDFLAGS="-L/home/mos/ceph/thirdpart/leveldb-1.15.0 -L/home/mos/ceph/thirdpart/jemalloc-3.6.0/lib -L/home/mos/ceph/thirdpart/libs/" CFLAGS="-O0 -g"

二、./configure --without-lttng --without-fuse --without-libatomic-ops --with-jemalloc --without-tcmalloc --without-libxfs --with-radosgw遇到的问题
1、configure: error: --with-radosgw was given but libfcgi (libfcgi-dev on debian) not found :
yum install fcgi-devel.x86_64
2、configure: error: --with-radosgw was given but libcurl (libcurl-dev on debian) not found:yum install libcurl-devel.x86_64
3、configure: error: radosgw selected but OpenSSL not found:yum install openssl-devel.x86_64
4、configure: error: no jemalloc found (do not use --with-jemalloc):yum install jemalloc-devel.x86_64
三、编译容量不足:
xfs_growfs /dev/centos/root
四、make遇到的问题:
1、 yum install libedit-devel.x86_64
make[3]: Leaving directory /root/mos/mos/ceph/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory/root/mos/mos/ceph/src’
make[1]: *** [all] Error 2
make[1]: Leaving directory `/root/mos/mos/ceph/src’
make: *** [all-recursive] Error 1

五、错误发现
1、发现radosgw进程启动失败;
通过命令启动radosgw进程:systemctl status [email protected]
其中sync这个名字是界面起的名字,重启看报错情况
2、进入cd /var/lib/ceph/bin下面 ldd rados查询rados链接库
报错:libcryptopp.so.6 => not found
进入安装linux下面查询该动态库路径 find / -name libcryptopp.so.* 找到路径存在与/user/lib64目录下,所以只需要把该库libcryptopp.so.6拷贝到对应缺失该库的虚拟机下

六、总结:环境编译成功,radosgw进程成功启动

你可能感兴趣的:(ceph源码编译遇到的问题(针对x86 centos))