实验环境:
实验的系统;Centos7.2_x86.64
源码包文件1;fastdfs-master
源码包文件2;libfastcommon-master
去github作者的站点克隆上面两个源码包文件
git clone https://github.com/happyfish100/fastdfs.git
git clone https://github.com/happyfish100/libfastcommon.git
查看源码文件版本并修改文件名
—libfastcommon-master:
[root@node1 ~]# cd libfastcommon-master
[root@node1 ~]# less libfastcommon.spec
[root@node1 ~]# cd
[root@node1 ~]# mv libfastcommon-master libfastcommon-1.0.32
[root@node1 ~]# tar zcf libfastcommon-1.0.32.tar.gz libfastcommon-1.0.32/*
—fastdfs-master:
[root@node1 ~]# cd fastdfs-master
[root@node1 fastdfs-master]# less fastdfs.spec
[root@node1 ~]# cd
[root@node1 ~]# mv fastdfs-master fastdfs-5.0.9
[root@node1 ~]# tar zcf fastdfs-5.0.9.tar.gz fastdfs-5.0.9/*
制作rpm包
注意:
1、安装开发环境 yum groupinstall Development Server Platform Development
2、版本很重要,一定要确定包版本。
3、fastdfs-master依赖于libfastcommon包,故先开始制作libfastcommon包
4、制作完成后依赖的libfastcommon包要先安装上,不然fastdfs无法制作
制作libfastcommon_rpm包;
[root@node1 ~]# mkdir -pv rpmbuild/{SOURCES,SPECS}
[root@node1 ~]# cp libfastcommon-1.0.32.tar.gz rpmbuild/SOURCES/
[root@node1 ~]# cp libfastcommon-1.0.32/libfastcommon.spec rpmbuild/SOURCES/
[root@node1 ~]# cd rpmbuild/SOURCES/
[root@node1 SOURCES]# vim libfastcommon.spec //按需修改,也可不修改尊重作者
[root@node1 SOURCES]# rpmbuild -bb libfastcommon.spec 制作rpm包
注意:
制作完成后rpm包会在您的系统/root/rpmbuild/RPMS/x86_64路径下
src包文件会在/root/rpmbuild/SRPMS/路径下
把依赖的制作好的包先安装
yum install ./libfastcommon-1.0.32-1.el7.centos.x86_64.rpm
yum install ./libfastcommon-devel-1.0.32-1.el7.centos.x86_64.rpm
制作fastdfs_rpm包;
[root@node1 ~]# cp fastdfs-5.0.9.tar.gz rpmbuild/SOURCES/
[root@node1 ~]# cp fastdfs-5.0.9/fastdfs.spec rpmbuild/SPECS/
[root@node1 ~]# cd rpmbuild/SPECS/
[root@node1 SPECS]# rpmbuild -ba fastdfs.spec
注意:
根据克隆源码包的方式不同有可能需要给fastdfs目录里的make.sh restart.sh stop.sh执行权限
chmod +x make.sh restart.sh stop.sh,不然会报错
如果出现;
error: Installed (but unpackaged) file(s) found:
/etc/fdfs/storage_ids.conf.sample
请修改fastdfs.spec文件在有/etc/那几行下面加入刚刚报错提示的文件路径
因为安装生成的fastdfs.spec文件没有被打包进去
再次执行rpmbuild -ba fastdfs.spec 还报错把刚加入的路径给删了,别问我为什么
安装制作好的rpm就可以了
[root@node1 x86_64]# cp *fastdfs* /root/
[root@node1 x86_64]# cd
[root@node1 ~]# yum install *.rpm
---done!!!
自此结束!!!
本文出自 “51eA” 博客,请务必保留此出处http://51eat.blog.51cto.com/11892702/1890934
原文地址:http://51eat.blog.51cto.com/11892702/1890934