在构建RPM包时,如何使用Requires
或类似标记指定node.js版本0.10.28或更高版本作为先决条件?它不在默认存储库中,用户可以从源构建它。我在网上看了看,看起来我只能Require
一个RPM文件提供的“功能”。此外,我不想查找/ usr / bin / node,因为它可能的节点可以安装在其他地方。我宁愿使用类似which node
的东西来检测它。
答案 0 :(得分:1)
从Requires
开始,RPM which
行不能是动态的。它指定包名称,功能或文件(按完整路径)。
您可以在RPM的node.js
脚本中检测到%pre
,如果找不到则会挽救(虽然我不建议这样做)。
您可以在%post
期间检测到它,并在未找到时发出警告,警告用户需要安装它。
您可以在应用程序启动期间检测它(假设您的应用程序是独立的)并在那里发出警报(可能除了在%post
期间提醒它)。
或者您可以Require
我之前提到的其中一件事,并将其留给用户以使其正确(或--force
他们超越错误。)