linux安装spec编译器,RPM包制作之Spec文件参数详解

2023-11-16

看这篇文章的人基本都有一个想法,就是:“劳资不想用YUM的安装!不是版本太低就是文件分布太野路子”,此时我们需要自己订制软件包的需求,我们会把一些源码包按照我们的需求来做成rpm包,其中的Spec文件是制作RPM包的核心。

下面我们以制作NGINX的RPM开始介绍其制作方法。以下操作在CentOS7.4 64位系统进行(切记,不要把7上的文件装到6上去)。

1.1 起手势 安装rpm-build

yum -y install rpm-build

新建一个新用户并切换到用户上(避免权限的问题)、建立工作车间目录(官网的说法。。。),并写进环境变量里。

[root]# useradd devops #新建用户

[root]# su - devops #切换用户

[devops]$ echo "%_topdir %(echo $HOME)/rpmbuild" >> ~/.rpmmacros

[devops]$ mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

注意: 这几个新建的文件夹必须要求全部大写!全部大写!全部大写!

以下为目录所对应存放文件的解释:

BUILD:源码解压以后放的目录

RPMS:制作完成后的rpm包存放目录

SOURCES:存放源文件,配置文件,补丁文件等放置的目录【常用】

SPECS:存放spec文件,作为制作rpm包的文件,即:nginx.spec……【常用】

SRPMS:src格式的rpm包目录

BuiltRoot:虚拟安装目录,即在整个install的过程中临时安装到这个目录,把这个目录当作根来用的,所以在这个目录下的文件,才是真正的目录文件。最终,Spec文件中最后有清理阶段,这个目录中的内容将被删除

Spec文件的宏定义:

rpmbuild --showrc | grep topdir #工作车间目录:_topdir /root/rpmbuild

-14: _builddir %{_topdir}/BUILD

-14: _buildrootdir %{_topdir}/BUILDROOT

-14: _rpmdir %{_topdir}/RPMS

-14: _sourcedir %{_topdir}/SOURCES

-14: _specdir %{_topdir}/SPECS

-14: _srcrpmdir %{_topdir}/SRPMS

-14: _topdir /root/rpmbuild

rpmbuild --showrc显示所有的宏,以下划线开头:

一个下划线:定义环境的使用情况&#

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux安装spec编译器,RPM包制作之Spec文件参数详解 的相关文章

随机推荐

  • IOS手机上点击input 输入框,页面会自动放大

    解决办法 使用禁止缩放页面来完成
  • XY提供面试题

    1 软件测试的流程是什么 1 需求调查 全面了解系统概况 应用领域 软件开发周期 软件开发环境 开发组织 时间安排 功能需求 性能需求 质量需求及测试要求等 根据系统概况进行项目所需的人员 时间和工作量估计以及项目报价 2 制定初步的项目计
  • Python图像处理-1.pil读取图像,显示图像

    from PIL import Image import matplotlib pyplot as plt pil im1 Image open pic1 png pil im2 Image open pic1 png convert L
  • 聊聊大数据(一)——大数据的存储

    大数据 现在可谓越来越火了 不管是什么行业 也不敢是不是搞计算机的 都要赶个集 借着这股热潮 亦或炒作 亦或大干一番 尤其是从事IT行业的 不跟 大数据 沾点边 都不好意思出去说自己是干IT的 大数据 一词 已无从考证具体是什么时候兴起的
  • GAMES101 Lec 07~09:Shading 定义、着色模型、着色频率、图形渲染管线、纹理

    3dMax 导出一个模型文件包含内容 顶点坐标 法线 边的关系 model 模型 空间中有了一个摄像机 Model 通过变换可以让摄像机放在原点 View 三维空间的模型变换到屏幕上 Projection 通过采样进行光栅化 Rasteri
  • Java方法求最大值

    package Methoud 用方法求最值 public class M5 public static void main String args int ages 23 58 64 75 64 int max getArryMaxDat
  • 诺基亚如何利用计算机上网,诺基亚E63的WIFI上网功能全教程

    手机端设置 依次点击 功能表 工具 设置 连接 接入点 选中 增加新接入点 1 连接名称 诺基亚e63连接wifi 任意设定 最好设中文或数字 没测试过英文得 2 选择承载方式 为 无线局域网 3 WLAN网络名称 推荐用 搜索图片名称 获
  • node 实现h264视频流buffer转码flv并使用websocket发送

    背景 硬件海康旧监控 编写node服务端以实现网页播放 调用了之前用C封装好的海康接口 视频数据由接口通过回调函数传参过来形成h64裸数据Buffer 本博客记录的就是如何从视频裸流 Buffer转码并回传给websocket 直接上代码
  • 线程的生命周期 笔记

    1 新建 new Thread 进入此状态 2 Thread start 进入就绪状态 或者 在运行状态执行yield 放弃CPU的执行转到就绪状态 或者是阻塞状态转入 3 阻塞状态 sleep 同步锁获取失败进入阻塞状态 执行了wait方
  • 为Jira提供的自动化测试跟踪功能

    在敏捷 DevOps CI CD以及其他任何我们想加入的行业词汇的世界里 开发人员和测试人员面临着快速交付高质量 功能性软件的巨大压力 需求必须由一系列的测试来支持 这样才能看到分配的需求是否得到了满足 许多组织在Jira 或其他平台 中手
  • torch转onnx模型

    torch转onnx模型 一 前言 onnx是开放神经网络交换格式 用于不同框架之间的迁移 推理方面比原生的torch快很多 本文以MobilenetV3做分类任务为例 实现模型转换 二 使用步骤 1 torch转换为onnx 代码如下 t
  • Java开发利器Eclipse和IDEA

    一 文本编辑工具 1 1 EditPlus EditPlus是一款由韩国 Sangil Kim ES Computing 出品的小巧但是功能强大的可处理文本 HTML和程序语言的Windows编辑器 你甚至可以通过设置用户工具将其作为C J
  • Spring boot项目打包war包并将class打包jar包放入war包中

    SpringBootApplication public class SpringBootWarApplication extends SpringBootServletInitializer Override protected Spri
  • Android图表年度最强总结,一篇文章从入门到精通!

    说到Android图表 不得不说一说MPAndroidChart这个强大的开源图表库 至于有多强大 先给你看看实现的效果图 如果效果图成功地引起了你的注意 那么 嘿嘿嘿 当然是把这篇文章看完 最后再点个赞 文章目录 添加依赖 创建视图以及简
  • 迎战 ChatGPT,谷歌聊天机器人 Bard 正式开放测试

    来源 极客邦科技 InfoQ 作者 刘燕 3 月 21 日晚间 谷歌开放了其聊天机器人 Bard 的测试 Bard 最初将可供美国和英国的部分用户使用 用户可以在 bard google com 上注册申请测试 不过谷歌表示推出速度会很慢
  • 【计算机视觉】直接线性变换(DLT)求解P矩阵(3 加入坐标的归一化)(附MATLAB代码)

    引言 本来上一篇帖子就已经达到了精度要求 不过经过同学提醒才发现老师的作业要求中有要求考虑归一化 emmmmm 坐标归一化 进行归一化的必要性和方法参考 计算机视觉中的多视几何 中的描述 上面的是从 2D到2D的结论 不过与从3D到2D的结
  • Python Matplotlib库:统计图补充

    作者简介 人工智能专业本科在读 喜欢计算机与编程 写博客记录自己的学习历程 个人主页 小嗷犬的博客 个人信条 为天地立心 为生民立命 为往圣继绝学 为万世开太平 本文内容 Python Matplotlib库 统计图补充 Python Ma
  • Redux 新教程Redux Toolkit的使用

    关于更新redux 唏嘘 还是跟不上时代的步伐了 哭唧唧 花费了不少的时间学习完redux后 还没用就发现官网的redux更新了新的使用用法 Redux Toolkit 于是乎硬着头皮翻译了一遍官网的Redux Toolkit 整理出最新的
  • 数据类型和运算符

    这里写目录标题 标识符 变量的概念与三要素 variable 变量的声明与使用 练习2 变量 数据类型 基本数据类型 练习3 变量 进制 了解 小数的存储 了解 基本数据类型的转换 数据类型转换的特例 字符串拼接 运算符 算数运算符 练习
  • linux安装spec编译器,RPM包制作之Spec文件参数详解

    看这篇文章的人基本都有一个想法 就是 劳资不想用YUM的安装 不是版本太低就是文件分布太野路子 此时我们需要自己订制软件包的需求 我们会把一些源码包按照我们的需求来做成rpm包 其中的Spec文件是制作RPM包的核心 下面我们以制作NGIN