实验:将inotify-tools-3.14.tar.gz源码包做成rpm包
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验:将inotify-tools-3.14.tar.gz源码包做成rpm包相关的知识,希望对你有一定的参考价值。
实验步骤:1首先将inotify-tools-3.14.tar.gz下载2 yum -y install rpm-build //安装将源码包变成RPM包的工具
3 rpmbuild -ba xx.spec //动创建rpmbuild目录(也可以手动创建,但是比较麻烦)
4cp /root/inotify-tools-3.14.tar.gz /root/rpmbuild/SOURCES/ //将源码包拷贝到存放源码包的位置
5 vim /root/rpmbuild/SPECS/inotify-tools.spec //修改配置文件,(重点)
配置文件内容:
Name:inotify-tools //名字------》必须写对
Version:3.14 //版本------》必须写对
Release:1 //第几次做rpm包
Summary:This is a watch service! ////概要描述
#Group: //属于那个包组,不写加#注释
License:GPL //开源协议,可以随便修改,复制传播
URL:www.zhangxiaobao.com //随便写
Source0:inotify-tools-3.14.tar.gz //源码包名字---》必须写对
#BuildRequires: //可不写,直接#号注释
#Requires: //可不写,直接#号注释
%description //详细描述信息
This is a watch service too!
%prep
%setup -q//源码包解压cd进去
%build
./configure //运行./configure脚本
make %{?_smp_mflags} //此行不变,进行源码转译,并安装
%install
make install DESTDIR=%{buildroot}
%files
%doc
/usr/local/* //添加此行--------》下面详细解释
%changel
6 yum -y install gcc make //安装源码安装依赖包
7 rpmbuild -ba inotify-tools.spec //将源码包做成rpm包
9 cd /rpmbuild/RPMS/x86_64 //做好的rpm包存放在此目录
10 scp inotify-tools-3.14-1.x86_64.rpm [email protected]:/root //将做好的rpm包传给另外一台做测试
11[[email protected] ~]# rpm -ivh inotify-tools-3.14-1.x86_64.rpm //安装
12[[email protected] ~]# which inotifywait //查看做好的rpm包是否生效
%doc
/usr/local/* //添加此行--------》下面详细解释
在配置文件中,我们如果不知道路径写什么,那就先不填写,继续执行步骤6 和步骤 7,这时会产生报错信息,报错信息最末尾会有提示路径,如下面所展现的:
RPM 构建错误:
发现已安装(但未打包的)文件:
/usr/local/bin/inotifywait
/usr/local/bin/inotifywatch
/usr/local/include/inotifytools/inotify-nosys.h
/usr/local/include/inotifytools/inotify.h
/usr/local/include/inotifytools/inotifytools.h
/usr/local/lib/libinotifytools.a
/usr/local/lib/libinotifytools.la
/usr/local/lib/libinotifytools.so
/usr/local/lib/libinotifytools.so.0
/usr/local/lib/libinotifytools.so.0.4.1
/usr/local/share/man/man1/inotifywait.1
/usr/local/share/man/man1/inotifywatch.1
可以将上面的路径全部复制到配置文件,也以简写成 /usr/local/*
到这里就完成了,有理解错误的地方,还请指出留言,谢谢!
以上是关于实验:将inotify-tools-3.14.tar.gz源码包做成rpm包的主要内容,如果未能解决你的问题,请参考以下文章