文章目录
RPM包制作及安装
一、背景
由于某些系统或者某些需求的约束下我们需要制作某个程序的rpm安装包,当然了制作rpm包需要使用到源码包,不过最好还是不要遇到这种情况。
1.1、源码包安装过程
1、首先下载软件包
2、解压缩
3、进入到解压目录
4、./configure进行编译前准备
5、make编译
6、make clean 清空编译内容
7、make install 编译安装
1.2、RPM包安装
# 使用这个命令进行安装 rpm -ivh libpng12-1.2.50-10.el7.x86_64.rpm --nodeps --force
使用上面的目录就可以了
–nodeps 👉 有些时候我们的包会有别的依赖如果依赖没有安装就会导致我们这个包安装失败。所以可以使用这个参数
–force 👉有的时候我们的操作系统已经安装了这个软件并且版本高于我们要安装的,使用这个参数可以强行安装我们指定的这个
1.3、RPM包优势
1、安装,重新安装,删除,升级和验证包
2、使用已安装的软件包的数据库来查询和验证软件包
3、使用元数据来描述包,安装说明等
4、将原始软件源打包为源包和二进制包
5、将原始软件源打包为源包和二进制包
6、将包添加到Yum存储库
7、对您的包裹进行数字签名
1.4、Tips
RMP 是 LINUX 下的一种软件的可执行程序,你只要安装它就可以了。这种软件安装包通常是一个RPM包(Redhat Linux Packet Manager,就是Redhat的包管理器),后缀是.rpm
deb 是 Unix 系统(其实主要是 Linux )下的安装包,基于 tar 包,因此本身会记录文件的权限(读/写/可执行)以及所有者/用户组。由于 Unix 类系统对权限、所有者、组的严格要求,而 deb 格式安装包又经常会涉及到系统比较底层的操作,所以权限等的设置尤其重要。
二、准备工作
2.1、准备源码包
wget http://cn2.php.net/distributions/php-5.6.13.tar.gz
使用wget命令下载源码包或者去官网下载。
2.2、安装rpmbuild软件包
yum -y install rpm-build
要生成rpm相关目录有两种方式:
1、执行rpmbuild soft.spec;
#ml rpmbuild soft.spec 错误:stat /root/soft.spec 失败:没有那个文件或目录 --报错没关系,只用于生成目录信息
2、手动创建
#使用下面的目录手动目录 mkdir -p ~/rpmbuild/{ BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}
安装成功后执行 tree -L 1 rpmbuild/
rpmbuild/
├── BUILD
├── BUILDROOT
├── RPMS
├── SOURCES
├── SPECS
└── SRPMS
2.3、编写SPEC文件
#执行下面命令 vim soft.spec
Name: Version: Release: 1%{ ?dist} Summary: Group: License: URL: Source0: BuildRequires: Requires: %description %prep %setup -q %build %configure make %{ ?_smp_mflags} %install %make_install %files %doc %changelog
然后 :wq保存即可。