gpt4 book ai didi

rpm - 创建一个没有文件而只有其他依赖项的虚拟 RPM 包

转载 作者:行者123 更新时间:2023-12-02 04:44:00 24 4
gpt4 key购买 nike

我正在将 FFMPEG 构建到 RPM 中,并且定义了许多子包。每个子包都是FFMPEG提供的一个共享库,或者那个共享库的开发文件,即libavcodec-devel .

我想提供一个名为 ffmpeg-devel 的包这仅取决于所有其他 devel包。我目前正在做以下事情:

%package -n ffmpeg-devel
Summary: ffmpeg-devel
Requires: libavcodec-devel
Requires: libavdevice-devel
Requires: libavfilter-devel
Requires: libavformat-devel
Requires: libavresample-devel
Requires: libavutil-devel
Requires: libpostproc-devel
Requires: libswresample-devel
Requires: libswscale-devel
%description -n ffmpeg-devel
ffmpeg-devel
%files -n ffmpeg-devel
%exclude /*

现在,通常, rpmbuild将在包的 BUILDROOT 中看到任何未打包的文件,如果没有包含或明确排除任何内容,则构建失败。在我看来,这是一件好事,因为它可以防止打包人员遗漏东西。

以上问题在我的 ffmpeg-devel 中虚拟包是它排除了所有内容,使我无法查看是否包含某些内容。

有没有更好的方法来制作只包含对其他包的依赖的空包?

最佳答案

我同意 Aaron,你应该把 %files 部分去掉。

部分原因是你做得对。这个元包是空的,所以没有文件可以看到。

您缺少的是使用/bin/rpm 检查您的包需要哪些依赖项:

rpm -qpR my-package.rpm

关于rpm - 创建一个没有文件而只有其他依赖项的虚拟 RPM 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34938681/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com