我在Redhat Linux上工作,我有一个tar.gz文件。我想将此tar.gz文件打包到rpm包文件中
在rpm包阶段,我只想提取tar.gz文件并将所有人员打包到rpm包中,当我在linux服务器上安装rpm包时,它只是简单地将所有文件复制到目标文件夹中。
我已经尝试了很多。这里有一些我的SPEC文件的代码,但它有问题:
%prep
%build
pwd
%install
rm -rf /usr/local/sample
mkdir /usr/local/sample
cd %{_sourcedir}
tar -xzvf sample.tar.gz -C /usr/local/sample
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root,-)
%doc
%changelog
我可以成功打包rpm文件,但是rpm包中没有包含tar.gz文件的内容。
如果我在其他服务器上安装rpm文件,则会失败。
我该如何解决这个问题?
答案 0 :(得分:3)
这是两个问题:
1)rpmbuild打包在%{buildroot}中找到的文件。您需要通过从%{_ sourcdir}复制或通过提取到%{build root} / usr / local / sample
来填充该目录2)您希望打包的文件需要在%files manifest
中提及