如何建造网站链接,网页设计网站模板素材,娄底网站建设wyo8,投资 网站 源码rpmbuild是一个命令行工具#xff0c;用于构建RPM#xff08;Red Hat Package Manager#xff09;软件包。RPM是一种用于在Linux系统上安装和管理软件的标准格式。rpmbuild可以将源代码或二进制文件打包成RPM软件包#xff0c;并为之配置元数据、依赖项、文件列表等。rpmbu…rpmbuild是一个命令行工具用于构建RPMRed Hat Package Manager软件包。RPM是一种用于在Linux系统上安装和管理软件的标准格式。rpmbuild可以将源代码或二进制文件打包成RPM软件包并为之配置元数据、依赖项、文件列表等。rpmbuild可以在各种Linux发行版中使用例如Red Hat、CentOS、Fedora、SUSE、Mageia等。它是RPM构建过程的核心工具之一常被系统管理员和开发人员使用。以下就制作rpm包过程予以介绍
一、rpm 包制作过程
1、安装工具
# 编译工具
yum install -y gcc make# rpm 包工作目录生成工具
yum install -y rpmdevtools# rpm 包构建工具
yum install -y rpm-build2、创建工作目录
2.1、手动创建
mkdir -p ~/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}2.2、rpmdevtools 构建创建 此命令会生成一个 rpmbuild 的目录这个目录就是制作 rpm 包的环境需要注意的是此命令只有在/root下执行生效且已有rpmbuild目录时不重新创建。
cd /root/
rpmdev-setuptreecd rpmbuild ls
BUILD RPMS SOURCES SPECS SRPMS各个目录的一般用途如下简介
BUILD 编译rpm包的临时目录BUILDROOT 编译后生成的软件临时安装目录RPMS 最终生成的可安装rpm包的所在目录SOURCES 所有源代码和补丁文件的存放目录SPECS 存放SPEC文件的目录(重要)SRPMS 软件最终的rpm源码格式存放路径
3、制作rpm包前准备
3.1、拷贝源码包或源码至SOURCES目录并编译源码二进制文件
当仓库存在MakeFile是通过make编译产生二进制文件不存在时进行编写
3.2、书写编译脚本 spec 脚本书写请参考https://blog.csdn.net/yuelai_217/article/details/130722081 并将spec 脚本拷贝至SPECS目录下
4、制作包
rpmbuild -ba SPECS/xxx.spec5、安装验证
rpm -ivh xxx.rpm二、rpmbuild 常见命令
2.1、rpmbuild 基本格式
rpmbuild [options] [spec文档|tarball包|源码包]
rpmbuild -ba nginx.spec2.2、使用spec 文件构建选项
选项含义-bp文件中安装执行前的地方-bc执行spec的%pre和%build 段(准备并编译)-bi执行spec中%pre%build与%install(准备编译并安装)-bl检查spec中的%file段(查看文件是否齐全)-ba建立源码与二进制包(常用)-bb只建立二进制包(常用)-bs只建立源码包
2.3、tarball包建立与spec类似
使用源码tar包进行构建
rpmbuild -tb xxx.zip 选项含义-tp对应-bp-tc对应-bc-ti对应-bi-ta对应-ba-tb对应-bb-ts对应-bs
2.4、从源码包建立
选项含义–rebuild建立二进制包通-bb–buildrootDIRECTORY确定以root目录建立包–clean完成打包后清除BUILD下的文件目录–nobuild不进行%build的阶段–nodeps不检查建立包时的关联文件–rmsource完成打包后清除SOURCES–rmspec完成打包后清除SPEC–targetCPU-VENDOR-OS确定包的最终使用平台
参考文档
1、https://www.shuzhiduo.com/A/D854Dy825E/
2、https://blog.51cto.com/pencild/1532569
3、https://www.cnblogs.com/Tzyyviki/p/14710479.html