1

如果用户在运行 rpmbuild 时尝试从 specfile 构建 rpm,并且在环境中设置了 CONFIG_SITE,并且该 specfile 使用“./configure --prefix=/usr && make”构建,那么用户在 CONFIG_SITE 中的设置可能会完全损坏构建。(作为一个具体的例子,假设 /usr/share/config.site 有“prefix=/bar”这一行。那么 spec 文件的文件清单将完全错误,rpmbuild 将失败。)

处理此问题的最佳做法是什么?似乎通常的做法是忽略它。我决定在规范文件中设置 CONFIG_SITE=true :

CONFIG_SITE=true ./configure --prefix=/usr ...

在调用 rpmbuild 时假设一个原始环境是否更常见,并且没有像在 /usr/share/config.site 中重置前缀这样的愚蠢行为?还是维护者负责确保规范文件将按预期构建 rpm?

4

1 回答 1

1

我认为如果用户设置了一个愚蠢config.site的文件,那是他们自己的错。除了这个之外,当然还有无数其他方法可以削弱系统。我不会担心的。我从未见过担心这个问题的 rpm 或 deb 构建脚本。所以这也许是你的“最佳实践”。

您偶尔会看到一个包带有它自己的config.site文件,但通常由打包程序提供以覆盖原始包中可能损坏的配置检查会产生的内容。

于 2011-05-29T21:51:34.053 回答