如何在RPM Specfile中要求node.js?

时间:2014-07-30 15:02:31

标签: rpm rpmbuild specfiles

在构建RPM包时,如何使用Requires或类似标记指定node.js版本0.10.28或更高版本作为先决条件?它不在默认存储库中,用户可以从源构建它。我在网上看了看,看起来我只能Require一个RPM文件提供的“功能”。此外,我不想查找/ usr / bin / node,因为它可能的节点可以安装在其他地方。我宁愿使用类似which node的东西来检测它。

1 个答案:

答案 0 :(得分:1)

Requires开始,RPM which行不能是动态的。它指定包名称,功能或文件(按完整路径)。

您可以在RPM的node.js脚本中检测到%pre,如果找不到则会挽救(虽然我不建议这样做)。

您可以在%post期间检测到它,并在未找到时发出警告,警告用户需要安装它。

您可以在应用程序启动期间检测它(假设您的应用程序是独立的)并在那里发出警报(可能除了在%post期间提醒它)。

或者您可以Require我之前提到的其中一件事,并将其留给用户以使其正确(或--force他们超越错误。)