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. 基于 Docker 的 MySQL 主从复制搭建

    出处:https://www.jianshu.com/p/ab20e835a73f

  2. Maven 中 dependencyManagement 元素,知识点

    Maven 提供的 dependencyManagement 元素既能让子模块继承到父模块的依赖配置,又能保证子模块依赖使用的灵活性.在 dependencyManagement 元素下的依赖声明不会 ...

  3. [LeetCode] 4. Median of Two Sorted Arrays 两个有序数组的中位数

    There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two ...

  4. 第01组 Beta冲刺(5/5)

    队名:007 组长博客: https://www.cnblogs.com/Linrrui/p/12031875.html 作业博客: https://edu.cnblogs.com/campus/fz ...

  5. 认识map-reduce

    基本概念 map-reduce1.0 例子: hadoop streaming 用语言驱动map-reduce的话,使用的hadoop streaming命令,可以通过python,php,java来 ...

  6. EasyPoi导出问题

    导出代码如下:Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), PriceExcelModel.class, pr ...

  7. sql实现excel中模糊替换

    今天遇到项目上需要修改数据库中部分字段 如果一个一个替换的话工作量实在太大,于是找一个办法 update 表名 set 字段名=replace(字段名,'aaaa','cccc') + whereaa ...

  8. Qt Quick 常用元素:Textinput 与 TextEdit 文本编辑框

    一.Textinput Textinput 用于编辑一行文本,类似于 QLineEdit. font 分组属性允许你设置 Textlnput 元素所用字体的各种属性,包括字体族(family).大 小 ...

  9. navicat for Mysql查询数据不能直接修改

    navicat for Mysql查询数据不能直接修改 原来的sql语句: <pre> select id,name,title from table where id = 5;</ ...

  10. CopyOnWriteArraySet 源码分析

    CopyOnWriteArraySet  源码分析: 1:数据结构: private final CopyOnWriteArrayList<E> al; 内部维护的是一个CopyOnWri ...