2

gem2rpm 的 0.6.0 版本包括给定 Gem 的所有(开发和运行时)依赖项。

示例:Rack Gem ( http://rubygems.org/gems/rack ) 版本 1.1.0 没有运行时依赖项,但有六个开发依赖项。

控制台输出gem2rpm --dependencies rack-1.0.1.gem为:

  • rubygem(测试规范)> = 0
  • 红宝石(露营)> = 0
  • 红宝石(fcgi)> = 0
  • rubygem(内存缓存客户端)>= 0
  • 红宝石(杂种)> = 0
  • rubygem(ruby-openid) >= 2.0.0
  • 红宝石(薄)> = 0`

如何指定仅包含运行时依赖项?

我还在ruby​​forge.org上开了一张票,但该跟踪器上没有很多活动。

谢谢你的任何提示。

4

2 回答 2

4

发件人:米格尔·阿玛斯

我也遭受了这个错误。我使用以下补丁更正了它,仅包括 :runtime 类型的依赖项:

--
--- gem2rpm.rb.orig 2010-04-08 00:09:39.794856454 +0100
+++ gem2rpm.rb  2010-04-08 00:27:11.808853058 +0100
@@ -105,10 +105,12 @@
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u}-n)
 Requires: rubygems
 <% for d in spec.dependencies %>
+<% if d.type == :runtime %>
 <% for req in d.version_requirements.to_rpm %>
 Requires: rubygem(<%= d.name %>) <%= req  %>
 <% end %>
 <% end %>
+<% end %>
 BuildRequires: rubygems
 <% if spec.extensions.empty? %>
 BuildArch: noarch
--

我没有将 :development 依赖项包含为 BuildRequires,因为从 SRPM 创建 RPM 不需要它们

于 2010-05-17T08:47:02.383 回答
1

大约 4 个月后,此错误在此处得到修复:https ://github.com/lutter/gem2rpm/commit/10e8f80da8fa5dfcdd5e5800f72106f0b995a6e5因此更新到较新版本的 gem2rpm 将解决此问题。

于 2012-12-28T19:18:05.213 回答