rhel7 制作二进制RPM软件安装包简单示例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rhel7 制作二进制RPM软件安装包简单示例相关的知识,希望对你有一定的参考价值。

下载rpm-build

# yum install rpm-build

如果上述方式无法安装(没配置网络源,虚拟机下是安装媒介源) 可以用下列方式下载后再安装(实践结果可能版本问题引起的缺少太多的*.so,不可行)

wget http://archive.download.redhat.com/pub/redhat/linux/7.0/en/os/i386/RedHat/RPMS/rpm-build-4.0-4.i386.rpm
# rpm -ivh rpm-build-4.0-4.i386.rpm 

使用下面的方式:

配置个可用的RHEL7(=CentOS7)(163)网络源
具体做法
http://mirrors.163.com/.help/centos.html 有介绍

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
# mv CentOS7-Base-163.repo /etc/yum.repos.d/rhel-source.repo
# vim /etc/yum.repos.d/rhel-source.repo

在vim命令模式下 将$releasever 替换为 版本号(7)

:%s/$releasever/7/g
:wq

使用当前源

# yum makecache

然后重新回到主题(一路y)

# yum install rpm-build

rpmbuild默认的工作目录环境可以通过下面命令查看

rpmbuild --showrc | grep topdir

 然后根据上述命令查看的结果创建文件夹(已经cd到_topdir 目录下)

# mkdir BUILD RPMS SOURCES SPECS SRPMS

文件各就各位,这里演示的是打包已经编译好的二进制及一些相关文件的放置,不是源码编译打包。 

编写简单的projectname.spec文件放在SPECS目录下,庆幸的是在SPECS目录下命令vim projectname.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 DESTDIR=%{buildroot}


%files
%doc



%changelog
View Code

下面是一个个人mysqlTransfer小工具的简单样例

 

然后通过运行rpmbuild命令进行打包

 

最终安装测试

# rpm -ivh wjshan0808.x.x.x.rpm

 

相关文档: http://rpm5.org/docs/max-rpm.html  想简单点话直接从Chapter 11. Building Packages: A Simple Example看。

 

以上是关于rhel7 制作二进制RPM软件安装包简单示例的主要内容,如果未能解决你的问题,请参考以下文章

使用rpm-build制作nginx的rpm包

CentOS常用软件安装方法

rpm包制作

centos软件是有四种安装方式吗?yum,rpm,二进制和源代码?

Linux的软件包管理

Linux系统Yum仓库制作