rpmbuild命令实例教程详解



rpmbuild命令实例教程详解,rpmbuild命令相关参数说明。

#rpmbuild
-bp 只作准备 (解压与打补丁)
-bc 准备并编译
-bi 编译并安装
-bl 检验文件是否齐全
-ba 编译后做成*.rpm和src.rpm
-bb 编译后做成*.rpm
-bs 只做成*.src.rpm

-tc -ti -ta -tb -ts 的功能类似,只是所需参数由spec文件变成tar包。

如:cd /usr/src/redhat/SPECS
rpmbuild -bp kernel-2.6.spec
更具体的用法说明:
Build options with [ | | ]:
*建立包的选项有:[ 从文件建立 |从 包建立 |从 包建立]
*从文件建立

-bp build through %prep (unpack sources and apply patches) from
* -bp 从文件的%prep段开始建立(解开源码包并打补丁)
-bc build through %build (%prep, then compile) from
*-bc 从文件的%build
-bi build through %install (%prep, %build, then install) from

-bl verify %files section from
*检查文件的%files段
-ba build source and binary packages from
*建立源码和二进制包
-bb build binary package only from
*只建立二进制包
-bs build source package only from
*只建立源码包

*从 包建立

-tp build through %prep (unpack sources and apply patches) from

-tc build through %build (%prep, then compile) from

-ti build through %install (%prep, %build, then install) from


-ta build source and binary packages from
*建立源码和二进制包
-tb build binary package only from
*只建立二进制包
-ts build source package only from
*只建立源码包

*从 包建立

–rebuild
build binary package from
*建立二进制包
–recompile
build through %install (%prep, %build, then install) from
*rpmbuild的其他使用项

–buildroot=DIRECTORY override build root
*确定以root目录建立包
–clean remove build tree when done
*完成打包后清除BUILD下的文件目录
–nobuild do not execute any stages of the build
*不进行BUILD的阶段
–nodeps do not verify build dependencies
*不检查建立包时的关联文件
–nodirtokens
generate package header(s) compatible with (legacy) rpm[23] packaging

–rmsource remove sources when done
*完成打包后清除sources
–rmspec remove specfile when done
*完成打包后清除specfile
–short-circuit skip straight to specified stage (only for c,i)
*跳过
–target=CPU-VENDOR-OS
override target platform
*确定包的最终使用平台

Common options for all rpm modes:
*所有rpm都可使用的选项

-D, –define=’MACRO EXPR’ define MACRO with value EXPR
*预定义
-E, –eval=’EXPR’ print macro expansion of EXPR
*显示大量EXPR扩展信息
–macros= read instead of default file(s)
*读文件代替默认文件
–nodigest don’t verify package digest(s)
*不检查包的说明信息
–nosignature don’t verify package signature(s)
*不检查包的签名信息
–rcfile= read instead of default file(s)
*读文件代替默认文件
-r, –root=ROOT use ROOT as top level directory (default: “/”)
*使ROOT为最高级别的路径
–querytags display known query tags
*显示已知的有疑问的地方
–showrc display final rpmrc and macro configuration
*显示最终的配置信息
–quiet provide less detailed output
*提供少量的信息
-v, –verbose provide more detailed output
* 提供大量的详细的信息
–version print the version of rpm being used
*显示rpm包的版本

Options implemented via popt alias/exec:
*附加选项

–dbpath=DIRECTORY use database in DIRECTORY

–with=