如果用户在运行 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?