Linux下rpmbuild命令的使用
rpmbuild中文手册:rpmbuild中文手册
一、RPM包的分类
RPM有五种基本的操作功能:安装、卸载、升级、查询和验证。
linux软件包分为两大类:
(1)二进制类包,包括rpm安装包(一般分为i386和x86等几种)
(2)源码类包,源码包和开发包应该归位此类(.src.rpm)。
有时候为了方便源码包的安装,和我们自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,当有了源码包就可以直接编译得到二进制安装包和其他任意包。spec file是制作rpm包最核心的部分,rpm包的制作就是根据spec file来实现的。在制作自定义rpm包的时候最好不要使用管理员进行,因为管理员权限过大,如果一个命令写错了,结果可能是灾难性的,而制件一个rpm 包普通用户完全可以实现。
二、PRM打包:
1、安装rpm-build软件包
RPM打包使用的是rpmbuild命令,这个命令来自rpm-build软件包,这个是必装的。
yum install rpm-build -y #安装rpm-build软件,以提供rpmbuild命令
当执行rpmbuild命令失败之后,会在当前目录下生成一个rpmbuild目录,该目录中包含下面的6个目录
- BUILD:
源代码解压以后放的位置,只需提供BUILD目录,具体里面放什么,不用我们管,所以真正的制作车间是BUILD目录。
- BUILDROOT:
假根,使用
install
临时安装到这个目录,把这个目录当作根来用的,所以在这个目录下的目录文件,才是真正的目录文件。当打包完成后,在清理阶段,这个目录将被删除。
- RPMS:
制作完成后的rpm包存放目录,为特定平台指定子目录(i386,i686,ppc)。
- SOURCES:
收集的源文件,源材料,补丁文件等存放位置。
- SPECS:
存放spec文件,作为制作rpm包的领岗文件,文件以.spec结尾。
- SRPMS:
src格式的rpm包位置 ,既然是src格式的包,就没有平台的概念了。
2、打包命令:
基本格式:rpmbuild [options] [spec文档|tarball包(或者压缩包—以.gz或.xz或.bz2结尾的)|源码包]
options有下面的几种选择:
1.-bp #只执行spec的%pre段(解开源码包并打补丁,即只做准备)
2.-bc #执行spec的%pre和%build 段(准备并编译)
3.-bi #执行spec中%pre,%build与%install(准备,编译并安装)
4.-bl #检查spec中的%file段(查看文件是否齐全)
5.-ba #建立源码与二进制包(常用):即编译后做成*.rpm和*.src.rpm
6.-bb #只建立二进制包(常用):即编译后做成*.rpm
7.-bs #只建立源码包:即只做成*.src.rpm
-tc -ti -ta -tb -ts 的功能类似,只是所需参数由spec文件变成tar包。
3、常用命令:
rpmbuild -bb XXX.spec
Linux下rpmbuild命令的使用相关推荐
- linux yum安装 rpmbuild,Redhat/Centos下rpmbuild命令从spec文件或者tar包建立rpm
rpmbuild是用来指示转换的源码不定编译成二进制文件的包. 二.Redhat/Centos下rpmbuild命令目录 /usr/src/redhat --BUILD #编译之前,如解压包后存放的路 ...
- Linux下addr2line命令用法
Linux下addr2line命令用于将程序指令地址转换为所对应的函数名.以及函数所在的源文件名和行号.当含有调试信息(-g)的执行程序出现crash时(core dumped),可使用addr2li ...
- Linux查看WAS的jvm信息,linux 下使用命令查看jvm信息
java程序员除了编写业务代码之外,特别是项目上线之后,更需要关注的是系统的性能表现,这个时候就需要了解一下jvm的性能表现了,可以借助于java虚拟机自带的一些分析工具,主要有三个常用的命令. 1. ...
- Linux下find命令详情
Linux下find命令在目录结构中搜索文件,并执行指定的操作. linux下find命令提供了相当多的查找条件,功能很强大,所以它的选项也很多,其中有许多的选项都值得我们深入的了解学习. 命令格式: ...
- Linux下date命令的修改时间问题
Linux下date命令的修改时间问题 最近好想学linux,刚好公司也有一台旧的电脑,可是有次公司突然停电了,我用date命令时出问题了,电脑的时间不对了,我后来到网上搜索了好久,也没找到同时修改时 ...
- Linux下find命令的使用(命令+案例)
一.find的作用? •递归式查找 •根据预设的条件递归查找对应的文件 二.find使用方法 – find [目录] [条件1]- -type 类型(f文本文件.d目录.l快捷方式) 代码如下: &l ...
- Linux下解决命令未找到的问题
Linux下解决命令未找到的问题 参考文章: (1)Linux下解决命令未找到的问题 (2)https://www.cnblogs.com/mnote/p/8832806.html 备忘一下.
- linux下find命令用法
一.Linux中find常见用法示例 ·find path -option [ -print ] [ -exec -ok command ] {} /; ...
- linux下sort命令使用详解---linux将文本文件内容加以排序命令
转载自:http://www.cnblogs.com/hitwtx/archive/2011/12/03/2274592.html linux下sort命令使用详解---linux将文本文件内容加以排 ...
最新文章
- OpenWebSpider 安装使用
- C语言基础排序算法-冒泡排序
- linux下无root权限使用yum安装的方法
- PaddlePaddle飞浆开启人工智能新时代
- 打造轻量级可视化数据爬取工具-菩提
- access对比数据_数据仓库系列之数据质量管理
- .netcore excel导出回车换行_必须掌握的回车键Enter应用技巧,100%干货
- python勿使用mutable值作为默认参数
- Socket简单介绍(通过NSStream)
- C#使用CurrentUICulture切换语言
- 解决安装python当中的.whl文件结尾的第三方库
- 3张经典人事管理模板,HR都直呼很好用
- oracle bfile备份,整理的一些oracle备份笔记 (zt)
- python输出文本文件_Python进阶02 文本文件的输入输出
- MEncoder的基础用法—6.1. 选择编解码器及容器格式
- MATLAB 【学习视频推荐】——新手必备
- 八年级计算机模拟试题,八年级计算机试卷(含答案).doc
- UI自动化测试之元素定位
- netty和dubbo的hashwheel时间轮定时器原理和源码解析
- Photoshop裁剪工具隐藏技巧
热门文章
- 删除MAC启动台上无效的图标
- Centos /Linux环境下利用Docker 安装mysql5.7镜像(含离线安装),启动mysql镜像并初始化数据库
- 求一元二次方程ax2+bx+c=0的根
- linux的matplotlib中文异常,Linux中matplotlib 中文显示问题解决
- Android网络库之Okio源码分析
- 批处理替换修改文件名
- 如何解决airpods无法连接电脑的难题
- 频率域滤波之带阻滤波器matlab代码
- Unity引擎开发-无人机模拟飞行实现
- mac自动化appium mac2 drive使用小记