1. RPM 简介
RPM (Resd HatPackage Manager ),顾名思义是Red Hat 的软件包管理。
RPM 可以让用户直接以binary 方式安装软件包,并且可以在安装、更新和删除的时候自动解决软件包的依赖。
2. 构建RPM 包
2.1.
安装工具
首先需要安装一些必要的打包工具。终端输入yum install rpmdevtools
2.2.
创建工作空间
工作空间是RPM 存放源码、编译、打包的一个场所。可以通过以下命令来创建一套标准化的工作空间。
rpmdev-setuptree
之后,就会得到这样这样一个目录
其中各个目录的作用及宏定义如下,宏定义将会在之后具体构建RPM 包的时候,用来指代具体的路径。
~/rpmbuild/
├── BUILD
├── BUILDROOT
├── RPMS
├── SOURCES
├── SPECS
└── SRPMS
路径宏定义说明
~/rpmbuild/SPECS
%_specdir保存RPM 包配置(.spec)文件
~/rpmbuild/SOURCES
%_sourcedir 保存源码包(如.tar 包)和所有patch 补丁
~/rpmbuild/BUILD
%_builddir
源码包被解压至此,并在该目录的子目录完成编译
~/rpmbuild/BUILDROOT
%_buildrootdir保存%install 阶段安装的文件
~/rpmbuild/RPMS
%_rpmdir
生成保存二进制RPM 包
~/rpmbuild/SRPMS
%_srcrpmdir
生成保存源码RPM 包
2.3.
创建Spec 文件
有了工作空间,将源码包和补丁文件等源文件放入%_sourcedir目录,便可以通过spec 文件的指导,生成需要的RPM 包。
编译及打包的命令如下:
rpmbuild -ba ***.spec
-bp 只作准备 (解压与打补丁)
-bc 准备并编译
-bi 编译并安装
-bl 检验文件是否齐全
-ba 编译后做成*.rpm和src.rpm
-bb 编译后做成*.rpm
-bs 只做成*.src.rpm
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)