发布RPM安装包

       首先rpm -qa rpm-build看下是否已经安装了rpmbuild软件包,没有的话执行命令yum -y install rpm-build,然后mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}创建工作路径。BUILD存放源代码并在该路径下完成编译工作;RPMS存放最终打包完成的二进制rpm包;SOURCES存放压缩的代码包由系统自动执行解压缩操作;SPECS存放spec扩展名的打包操作配置清单;SRPMS保存最终打包完成的源代码rpm包。

       从https://gitee.com/gonglibin/GlbLib-1.0.0下载源代码包(Makefile需要剔除install相关操作),执行tar -czf GtLib-1.0.0.tar.gz GtLib-1.0.0/打成tar.gz格式包扔到SOURCES路径下。在SPECS目录下新建GtLib.spec文件,写入配置信息保存退出,执行rpmbuild -bb GtLib.spec开始打包操作。如果打包成功在RPMS目下会生成x86_64路径,x86_64是架构名称,不同的机器名称可能会不同。为了验证打包的正确性,可以执行yum install GtLib-1.0.0-1.x86_64.rpm命令对rpm包进行安装,执行yum remove GtLib-1.0.0-1.x86_64命令进行卸载,执行rsync -av GtLib-1.0.0-1.x86_64.rpm  rpm@192.168.100.100::mylibrary命令进行发布。

       GtLib.spec文件信息

##############################################################
# http://www.rpm.org/max-rpm/ch-rpm-inside.html              #
##############################################################

Name:		GtLib						# 软件包名称
Version:	1.4.0						# 关键包版本
Release:	1						# 发布序列号

Summary:	Global library					# 软件包概要
Group:		gonglibin					# 软件包分组
License:	gonglibin					# 软件包授权
URL:		https://gitee.com/gonglibin/GlbLib-1.0.0	# 软件包主页
Source0:	GtLib-1.4.0.tar.gz				# 代码压缩包

%description -l zh_CN						# 软件包描述
个人通用库纯属自娱自乐!

%prep								# 预处理脚本
%setup								# 软件包解压

%build								# 源代码编译
make clean
make all

%install							# 构建安装路径
mkdir -p $PWD%{_prefix}/lib/GtLib
mkdir -p $PWD%{_prefix}/include/GtInc

cp -rf lib/*	$PWD%{_prefix}/lib/GtLib/.
cp -rf inc/*	$PWD%{_prefix}/include/GtInc/.
cp -rf usr	%{buildroot}/.

%post								# 善后处理脚本

%files								# 安装路径及文件
%{_prefix}/lib/GtLib
%{_prefix}/include/GtInc

%attr(755,root,root)
%defattr(755,root,root)

%changelog							# 安装变更日志
 


上一篇:JAVA8新特性介绍


下一篇:GDB调试STL的vector、list和map