发布RPM安装包

简介:        首先rpm -qa rpm-build看下是否已经安装了rpmbuild软件包,没有的话执行命令yum -y install rpm-build,然后mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}创建工作路径。

       首先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							# 安装变更日志
 


相关文章
|
关系型数据库 Serverless 分布式数据库
【公测】PolarDB PostgreSQL版Serverless功能免费使用​!
【公测】PolarDB PostgreSQL版Serverless功能免费使用​,公测于2024年3月28日开始,持续三个月,公测期间可以免费使用!
|
Web App开发 Linux 开发工具
Centos7 yum 安装chrome
Centos7 yum 安装chrome配置yum源vim /etc/yum.repos.d/google-chrome.repo写入以下内容[google-chrome]name=google-chromebaseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearchenabled=1gpgcheck=1gpgkey=http...
912 0
|
12月前
|
7月前
|
人工智能 运维 关系型数据库
|
4月前
|
供应链 JavaScript 数据可视化
生产成本核算,为什么总算不准?
在制造企业中,生产成本核算不准是一个普遍难题。文章深入分析了六大关键场景,包括产品设计变更频繁、采购价格不清、生产现场混乱、仓储物流差异、人工成本难归集及费用归口不明确,揭示了这些问题带来的系统性风险。同时,文章指出ERP系统在解决成本核算难题中的关键作用,强调通过BOM管理、工单细化、采购追踪、成本自动归集与精细化报表分析,帮助企业实现成本的精准核算与有效控制。
|
11月前
|
搜索推荐 JavaScript 前端开发
博客添加Aplayer音乐播放器
本文介绍了如何在博客网站中添加一个美观且功能强大的音乐播放器APlayer.js,从基本设置到高级定制,包括单曲播放、播放列表以及第三方歌单的集成方法。通过简单的HTML和JavaScript代码,即可实现个性化的音乐播放体验,让访客在浏览文章的同时享受美妙的音乐。
591 12
博客添加Aplayer音乐播放器
|
11月前
|
Ubuntu 网络协议 Linux
快速部署WSL(Windows Subsystem for Linux)
WSL提供了一种轻量级的方法,使开发者能够在Windows上无缝运行Linux环境。通过本文介绍的步骤,可以快速安装、配置和使用WSL,以满足开发和测试的需求。
2039 8
|
Web App开发 缓存 运维
CentOS命令大全:从入门到精通
CentOS命令大全:从入门到精通
1788 1
|
存储 JSON JavaScript
Vue之Jwt的运用(一起探索JWT在Vue中的用途吧)
Vue之Jwt的运用(一起探索JWT在Vue中的用途吧)
388 0
|
搜索推荐
带你读《2022技术人的百宝黑皮书》——冷启动系统优化与内容潜力预估实践(6)
带你读《2022技术人的百宝黑皮书》——冷启动系统优化与内容潜力预估实践(6)
277 0