2010-03-15 129 views
2

gem2rpm的0.6.0版本包含給定Gem的所有(開發和運行時)依賴關係。gem2rpm包含所有依賴項,而不僅僅包含運行時依賴關係

示例:Rack Gem(http://rubygems.org/gems/rack)版本1.1.0沒有運行時依賴關係,但有六個開發 依賴關係。

gem2rpm --dependencies rack-1.0.1.gem

控制檯輸出是:

  • ruby​​gem(測試規格)> = 0
  • ruby​​gem(露營)> = 0
  • ruby​​gem(FCGI)> = 0
  • ruby​​gem(內存緩存客戶端)> = 0
  • ruby​​gem(雜種)> = 0
  • ruby​​gem(紅寶石的OpenID)> = 2.0.0
  • ruby​​gem(thin)> = 0`

如何指定只包含運行時依賴項?

我也打開了rubyforge.org的門票,但該跟蹤器上沒有太多活動。

謝謝你的任何提示。

回答

4

發件人:Miguel Armas

我也遭受了這個錯誤。我糾正它僅包含 依賴型:

-- 
--- 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 
-- 

我不包括:與下面的補丁,運行時開發依賴關係BuildRequires ,因爲它們不需要從SRPM創建RPM

相關問題