打包rpm时排除文件类型

jed*_*ikb 5 python packaging rpm

在我的spec文件中打包python rpm,我想删除某些目录中的某些文件类型:

例如,我想在这些目录中排除source*.py文件:

lib/*.py

comm/*.py
Run Code Online (Sandbox Code Playgroud)

我想我应该在我的规范的%文件部分中这样做.有什么建议?

Lea*_*dro 20

你需要使用%排除宏,即

%files
%exclude /lib/*.py
%exclude /comm/*.py
Run Code Online (Sandbox Code Playgroud)


Pet*_*aut 6

在遥远的过去的某个时刻,你只是不包括你在该%file部分中不想要的文件,因此它们不会打包.这可能已经证明太容易出错,因此一些RPM实现开始抱怨未打包的文件.由于RPM开发总是有点碎片化和未记录,因此我不清楚规范解决方案是什么,但我建议最安全的方法是在安装例程结束时删除文件.这种方法也可以轻松地运输到其他包装系统,如dpkg.