最近我升级到RPM的新版本(4.8.0),由于%install
指令的行为发生了变化,我的应用程序的构建过程非常糟糕。
基于我做的一些网络拖网,我发现%install
指令现在做的第一件事就是删除构建目录并从头开始创建它。
哪个好,除了我的spec文件已经在%prep
和%build
指令的build目录中做了一些工作,然后被%install
的新行为破坏了指令。
一旦我发现了这个问题,修复就很简单了:只需完成%install
指令中的所有工作。
但为什么要改变呢?我猜测我的工作流程不适合"正确的"这样做的方法,早期版本的RPM容忍它,但现在已经消除了容差。
那么,是"正确的"工作流程?各种指令的用途是什么?
答案 0 :(得分:1)
%prep
提取/等。您的来源文件等(即Untar)
%build
构建您的二进制文件,文档等(即./configure && make
)
%install
将已安装/待打包的文件复制到%buildroot
。