RPM是RPM Package Manager(RPM软件包管理器)

1. 安装制作工具

# yum install rpm-build

2. 目录结构

/root/rpmbuild/SOURCES — 存放源代码,补丁,图标等文件

/root/rpmbuild/SPECS — 存放用于管理rpm制作进程的spec文件

/root/rpmbuild/BUILD — 解压后的文件存放在这里

/root/rpmbuild/RPMS — 存放由rpmbuild制作好的二进制包

/root/rpmbuild/SRPMS —存放由rpmbuild制作好的源码包

3. 以rp-pppoe为例

下载rp-pppoe-3.10.tar.gz

# tar xvf rp-pppoe-3.10.tar.gz
# cp rp-pppoe-3.10.tar.gz /root/rpmbuild/SOURCES/
# cp rp-pppoe.spec /root/rpmbuild/SOURCES/

4. spec解释

Summary:简单描述软件

Name:定义rpm的名称

Version:定义软件版本

Release:发行版本

License:定义许可证

Group:软件分类

Source:源码下载地址

URL:源码相关网站

Distribution:发行版系列

Packager:打包人的信息

%description:软件详细描述,可多行

%prep:软件编译之前的处理,如解压

%build:开始编译软件,如make

%install:开始安装软件,如make install

%files:指定哪些文件需要被打包,如/usr/local/nginx

%preun:定义卸载之前的动作,如杀掉进程

5. 制作

# rpmbuild -bb rp-pppoe.spec
# rpmbuild -ba rp-pppoe.spec
# ls RPMS/x86_64/rp-pppoe-
rp-pppoe-3.10-1.x86_64.rpm rp-pppoe-gui-3.10-1.x86_64.rpm
rp-pppoe-debuginfo-3.10-1.x86_64.rpm

6. 常见错误

如果出错:

RPM build errors:

Installed (but unpackaged) file(s) found:

解决办法:

将/usr/lib/rpm/macros 中

%__check_files /usr/lib/rpm/check-files %{buildroot} 注释掉

如果出错:

error: Failed build dependencies:

解决办法:

将spec文件中BuildRequires去掉

7. rpmbuild 中文手册

http://www.jinbuguo.com/redhat/rpmbuild.html

rpm安装包制作的更多相关文章

  1. rpm 安装包制作

    rpm 安装包制作 思路 参照系统自带 etcd 解压->替换掉执行文件->打包 1 预备安装工具 下载工具 yumloader #yum install -y yum-utils 解压工 ...

  2. 使用Setup Factory安装包制作工具制作安装包

    在我们开发完软件后,除了极个别案例我们把整个目录复制给客户用外,我们一般都需要做成安装包,方便整个软件的部署操作,以安装包的部署操作可能简单的是复制文件,也可能包括一些注册表.数据库等额外的操作,不过 ...

  3. 基于InstallShield2013LimitedEdition的安装包制作

    在VS2012之前,我们做安装包一般都是使用VS自带的安装包制作工具来创建安装包的,VS2012.VS2013以后,微软把这个去掉,集成使用了InstallShield进行安装包的制作了,虽然思路差不 ...

  4. vs2017 rc 离线安装包制作

    vs2017 rc 离线安装包制作 1.下载在线安装包:https://aka.ms/vs/15/release/vs_Enterprise.exe 2.制作离线安装包: vs_Enterprise. ...

  5. Mac OS平台下应用程序安装包制作工具Packages的使用介绍

    一.介绍 Windows下面开发好的应用程序要进行分发时有很多打包工具可供选择,如Inno Setup, InstallShield, NSIS, Advanced Installer, Qt Ins ...

  6. 安装包制作工具 SetupFactory使用1 详解

    2014-11-19 Setup Factory 是一个强大的安装程序制作工具.提供了安装制作向导界面,即使你对安装制作不了解,也可以生成专业性质的安装程序.可建立快捷方式,也可直接在 Windows ...

  7. linux rpm问题:怎样查看rpm安装包的安装路径

      x rpm问题:怎样查看rpm安装包的安装路径 2010-07-12 21:19:15 标签:rpm linux 路径 休闲 职场 rpm -qpl xxxxxx.rpm 1.如何安装rpm软件包 ...

  8. Windows安装包制作指南——Advanced Installer的使用

    1. 前言 最近需要制作windows的安装包,据说Advanced Installer比较强大,遂拿它来制作安装包.在网上少量资料以及官网简约文档中摸索前进,总算是制作出可用的安装包,在此记录,仅供 ...

  9. WinFrom 安装包制作

    1.添加安装向导项目打开文件系统界面,选择应用程序文件夹.在右侧右击->添加->文件,把程序需要的文件都添加进来. 2.右击程序集->创建快捷方式.右击快捷方式->属性窗口-& ...

随机推荐

  1. LiunxCentos7 上安装 FastDFS

    Centos7 上安装 FastDFS 1.安装gcc(编译时需要) FastDFS是C语言开发,安装FastDFS需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gc ...

  2. 【转载】深度解读 java 线程池设计思想及源码实现

    总览 开篇来一些废话.下图是 java 线程池几个相关类的继承结构: 先简单说说这个继承结构,Executor 位于最顶层,也是最简单的,就一个 execute(Runnable runnable) ...

  3. 【使用篇二】SpringBoot访问静态资源(4)

    默认的,SpringBoot会从两个地方查找静态资源: classpath/static 的目录下 ServletContext 根目录下 一.classpath/static 的目录 在类路径下常见 ...

  4. 洛谷1439:最长公共子序列(nlogn做法)

    洛谷1439:最长公共子序列(nlogn做法) 题目描述: 给定两个序列求最长公共子序列. 这两个序列一定是\(1\)~\(n\)的全排列. 数据范围: \(1\leq n\leq 10^5\) 思路 ...

  5. 洛谷p1137旅行计划

    题面 关于拓扑排序 因为这好几次考试的题目里都有在DAG中拓扑排序求最长/短路 txt说它非常的好用 就找了个题做了下 拓扑排序就是寻找图中所有的入度为零的点把他入队 然后再枚举它所有的连到的点,只要 ...

  6. DVWA File Upload 通关教程

    File Upload,即文件上传.文件上传漏洞通常是由于对上传文件的类型.内容没有进行严格的过滤.检查,使得攻击者可以通过上传木马获取服务器的webshell权限,因此文件上传漏洞带来的危害常常是毁 ...

  7. ShellScript之变量

    Shell脚本之变量学习 ##########################ShellScript初学者,文章摘自菜鸟教程################################ 1.She ...

  8. CentOS7安装图形化界面方法

    一.linux安装(root用户操作) 1. 安装vncserver; yum install tigervnc-server 2. 安装vncviewer; yum install vnc 3. 设 ...

  9. Let's Encrypt之acme.sh

    前言 Let's Encrypt 是一个证书颁发机构(CA).是由互联网安全研究小组(ISRG,Internet Security Research Group)主导并开发的一个新型数字证书认证机构( ...

  10. 虚拟机下怎么连接U盘,如何使用U盘?一策书(湘岳阳万江波)的随笔

    准备在虚拟机下,制作U盘启动盘.安装了U盘制作软件,插上U盘却无法识别到.打开虚拟机进行设置,添加USB设备,提示:已达到最大值.怎么回事呢? 原来还需要在宿主机上进行设置. 在宿主机上,运行:ser ...