rpmbuild 我没有指定的依赖项来自哪里?
rpmbuild where do dependencies I didn't specify come from?
如果您使用 rpmbuild -ba
创建一个 RPM,并且 PHP 脚本包含在 RPM 中,是否会使该 RPM 自动依赖于 /usr/bin/php
和 usr/bin/env
?
我正在使用 rpmbuild -ba
打包一个 Symfony 项目。 Symfony 有许多 PHP 脚本,其中 #!/usr/bin/env php
作为脚本的第一行。
构建后,如果我执行 rpm -qp <rpm-package> --requires
,它会显示对 /usr/bin/env
、/usr/bin/php
、/bin/sh
(列出两次?很奇怪)和 /bin/bash
的依赖关系.
我看到一些脚本使用 #!/bin/sh
,而其他脚本使用 #!/bin/bash
。
我想了解这些依赖项的来源,因为它们尚未在 .spec 文件中指定为 "Requires" 依赖项。
rpmbuild
自动扫描您的文件以查找依赖项(使用 ldd
等)。您可以在此处找到文档:http://ftp.rpm.org/max-rpm/s1-rpm-depend-auto-depend.html
(不推荐,但是)如果你想阻止rpmbuild
这样做,你可以输入:
AutoReqProv: no
在您的规范文件中。
如果您使用 rpmbuild -ba
创建一个 RPM,并且 PHP 脚本包含在 RPM 中,是否会使该 RPM 自动依赖于 /usr/bin/php
和 usr/bin/env
?
我正在使用 rpmbuild -ba
打包一个 Symfony 项目。 Symfony 有许多 PHP 脚本,其中 #!/usr/bin/env php
作为脚本的第一行。
构建后,如果我执行 rpm -qp <rpm-package> --requires
,它会显示对 /usr/bin/env
、/usr/bin/php
、/bin/sh
(列出两次?很奇怪)和 /bin/bash
的依赖关系.
我看到一些脚本使用 #!/bin/sh
,而其他脚本使用 #!/bin/bash
。
我想了解这些依赖项的来源,因为它们尚未在 .spec 文件中指定为 "Requires" 依赖项。
rpmbuild
自动扫描您的文件以查找依赖项(使用 ldd
等)。您可以在此处找到文档:http://ftp.rpm.org/max-rpm/s1-rpm-depend-auto-depend.html
(不推荐,但是)如果你想阻止rpmbuild
这样做,你可以输入:
AutoReqProv: no
在您的规范文件中。