linux源码编译rpm,源码包制作成rpm包

将源码包(tar包)制作成rpm 包

一、准备实验环境

实验环境 RHEL6

1.下载源码软件包:lsyncd-2.0.5.tar.gz

2.首先检查本地的编译环境和 rpm 包制作软件与相关目录是否正常

3.rhel6 下的 rpm 包制作源码所在目录/root/rpmbuild,与 rhel5 的/usr/src/RedHat/有所不同

[root@linuxidc ~]# rpmbuild lsyncd-2.0.5.tar.gz //可以生成/root/rpmbuild 目录

如 果 没 有 /root/rpmbuild 目 录 , 执 行 命 令 :rpmbuild lsyncd-2.0.5.tar.gz , 会 自 动 生 成

4.拷贝 lsyncd 源码到/root/rpmbuild/SOURCES 目录下,此时,所有子目录下只有 SOURCES 下有 lsyncd-2.0.5.tar.gz 一个文件

[root@linuxidc rpmbuild]# tree

二、生成 spec 规则文件 (rpm -qpi 查看的内容来源于此文件)

[root@linuxidc rpmbuild]# cd SPECS

[root@linuxidc SPECS]# vim lsyncd-2.0.5.spec

注意一定要用 vim 编辑才会自动生成模板文件。 该文件内容为自动生成的模板,待会根据需要手工修改,暂时保存退出即可。

1.重要部分解释

Source0: //源码名称

BuildRequires: //软件依赖关系描述(可以省略)

Requires: //该 rpm 包所依赖的软件包名称

%build //本段是建立段,所执行的命令为生成软件包服务,相当于./configure 和 make

%install //这一节主要用于完成实际安装软件必须执行的命令,这一节一般是由make install 指令构成,但是有时也会包含 cp、mv、install 等指令

%clean //这一节所描述的内容表示在完成包建立的工作之后,自动执行此节下的脚本进行附加的清除工作,这一节的内容通常简单地使用 rm -rf $RPM_BUILD_ROOT 命令,

不需要指定此节的其它内容

%files //这一节指定构成包的文件的列表,它是使用节前缀%files 表示的。此外,它还包含一系列宏控制安装后的文件属性和配置信息。,分为三类--说明文档(doc),

配置文件(config)及执行程序,也根据提示编写。%files 下列出应该捆绑到 RPM 中的文件,并能够可选地设置许可权和其它信息

2.编辑 lsyncd 的 spec 规则文件 (编辑 lsyncd-2.0.5.spec 文件,先填写可以确定的部分)

Source0: lsyncd-2.0.5.tar.gz //注意名称要写对,文件名字必须与源码一致

%install

rm -rf $RPM_BUILD_ROOT

make install DESTDIR=$RPM_BUILD_ROOT //此处没有填写完整,需根据“make install”的输出填写。

%files //此处还没有填写,后面根据提示再修改。

%changelog

//下面填写编译时间 5 月 22 日,日期格式为 date +"%a %b %d %Y",必须以*开头,以--end结尾

* Tue May 22 2012

--end

如何确定其它的参数内容呢,可以根据一下步骤,一步步填写

3.安装源码包

[root@lsyncd lsyncd-2.0.5]# ./configure //看看配置时需要依赖哪些软件包

//在配置过程中,需要的软件依赖包为 lua-devel-5.1.4-4.1.el6.i686.rpm,那么 lsyncd-2.0.5.spec

中,"BuildRequires: Requires:"软件依赖配置就可以写上 lua-devel。

[root@linuxidc lsyncd-2.0.5]# make

[root@linuxidc lsyncd-2.0.5]# make install

输出的内容就是 lsyncd-2.0.5.spec 文件中“%install”后面需要填写的内容,表示安装哪些文件到哪些路径下,但要修改格式。

1.将这一段内容中所有的/usr/local 修改为变量$RPM_BUILD_ROOT,因为制作 rpm 包时并不需要将文件安装到实际的路径,所以暂时安装在$RPM_BUILD_ROOT 中,其实就是/root/rpmbuild/BUILDROOT/lsyncd-2.0.5-1.el6.i386 这个临时目录。

2.将这一段内容中所有的单引号去掉或者换成双引号,因为要允许变量。

到现在,lsyncd-2.0.5.spec 文件中还有“%files”没有填写。%files 表示编译完成的软件到底包括那些文件,可以执行 rpmbuild -bb lsyncd-2.0.5.spec,根据提示可以得到%files 的内容。

[root@vmware1 SPECS]# rpmbuild -bb lsyncd-2.0.5.spec

在最后会有这一段关于这些文件的错误,这里列出的所有文件,就是我们需要填写入

lsyncd-2.0.5.spec 中%files 的内容。

三、到这里所有 lsyncd-2.0.5.spec 中所有内容编写完毕,再次执行 rpmbuild 命令

[root@linuxidc SPECS]# rpmbuild -ba lsyncd-2.0.5.spec

//顺利通过编译,使用-ba 生成 rpm 包和 srpm 包,查看生成的目标 rpm 包

[root@linuxidc rpmbuild]# tree *RPMS

[root@linuxidc rpmbuild]# rpm -qpi RPMS/i386/lsyncd-2.0.5-1.el6.i386.rpm

[root@linuxidc i386]# rpm -ivh lsyncd-2.0.5-1.el6.i386.rpm

[root@linuxidc i386]# rpm -qa | grep lsyncd

[root@linuxidc i386]# rpm -ql lsyncd

通过 rpm 的查询命令发现 lsyncd 的信息,都是我们之前配置的内容。

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: PHP 7.3的源码是以rpm格式进行发布的。rpm是一种软件管理系统,用于在基于Red Hat的Linux系统上安装、更新和卸载软件。PHP官方提供了针对CentOS和Red Hat Enterprise Linux (RHEL)的rpm源码,以方便用户在这些操作系统上安装和管理PHP 7.3。 使用rpm源码安装PHP 7.3时,首先需要下载源码文件。然后,可以使用rpm命令对源码进行安装。安装过程将会解压源码并将其编译可执行的PHP二进文件,同时也会生相关的配置文件和模块。 安装完后,可以通过启动PHP-FPM进程池或Web服务器来使用PHP 7.3。PHP-FPM是PHP FastCGI进程管理器,负责处理PHP的请求。Web服务器(如Apache或Nginx)与PHP-FPM通信,将PHP相关的请求转发给PHP-FPM进行处理,然后返回响应给客户端。 对于开发人员来说,PHP 7.3的源码也提供了开发所需的一些工具和示例代码。可以使用源码中的PHP二进文件来运行PHP脚本,还可以在源码的“ext”目录下找到已编译的PHP扩展模块。 总之,PHP 7.3的源码rpm是一种便于在基于Red Hat的Linux系统上安装和管理PHP的方式。它提供了PHP二进文件、配置文件、模块和示例代码,以及安装、更新和卸载PHP的便捷工具。 ### 回答2: PHP 7.3的源码rpm是指适用于CentOS、Red Hat Enterprise Linux (RHEL)等基于RPM管理系统的操作系统的一个安装。该源码含了PHP 7.3的源代码和一系列构建所需的文件,可以用于编译、构建和安装PHP 7.3。 获得源码rpm的方式可以通过官方PHP网站或者其他镜像站点下载。下载后,可以通过以下步骤来安装php7.3源码rpm: 1. 使用root权限登录服务器,打开终端。 2. 使用命令“cd”进入源码所在的目录。 3. 运行命令“rpm -ivh php-source-package.rpm”来安装源码。其中,“php-source-package.rpm”是源码的文件名,具体的文件名可能会有所不同。 4. 安装过程可能需要一些时间,请耐心等待。 5. 安装完后,可以通过运行命令“php -v”来验证PHP是否功安装,并查看安装的版本号。 安装源码rpm的好处是可以自定义编译参数,以满足特定的需求。同时,使用源码也允许在未来对PHP进行定化的修改和升级。 需要注意的是,安装源码需要具备一定的Linux命令行和编译知识。如果不确定操作,请谨慎安装,或者寻求相关的技术支持。 ### 回答3: PHP 7.3的源码RPM是一种用于安装和管理PHP的软件,它含了PHP 7.3的源代码和一些必要的依赖项。RPM是Red Hat Package Manager的缩写,它是一种在Red Hat及其衍生发行版上安装软件的标准工具。 PHP源码RPM允许用户从源代码构建和安装PHP,并提供了一种简单的方法来管理PHP的安装和更新。用户可以使用RPM工具来安装、卸载和更新PHP,它会自动处理依赖关系和文件冲突,确保安装的PHP版本兼容并且正确地配置。 用户可以通过从PHP官方网站下载PHP 7.3的源码RPM来获取它。下载后,用户可以使用RPM工具来安装它,命令类似于"rpm -ivh php-7.3.rpm"。 安装完后,用户可以使用命令"php -v"来验证PHP版本是否正确安装。用户还可以通过编辑PHP的配置文件来自定义PHP的设置,例如调整内存限、启用扩展等等。 总结来说,PHP 7.3的源码RPM是一种方便的工具,允许用户从源代码构建、安装和管理PHP,提供了一种简单的方法来管理PHP的安装和更新。它使得安装和配置PHP变得简单且可靠,并为用户提供了灵活性和自定义选项。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值