2009-12-29 32 views
1

Windows Vista中,紅寶石v 3.3.5不會讓我在Ruby中安裝寶石提示

C:\>gem install rmagick 

Building native extensions. This could take a while... 

ERROR: Error installing rmagick: 
     ERROR: Failed to build gem native extension. 

C:/Ruby19/bin/ruby.exe extconf.rb 
checking for Ruby version >= 1.8.5... yes 
Invalid drive specification. 
Unable to get ImageMagick version 
*** extconf.rb failed *** 
Could not create Makefile due to some reason, probably lack of 
necessary libraries and/or headers. Check the mkmf.log file for more 
details. You may need configuration options. 

Provided configuration options: 
     --with-opt-dir 
     --without-opt-dir 
     --with-opt-include 
     --without-opt-include=${opt-dir}/include 
     --with-opt-lib 
     --without-opt-lib=${opt-dir}/lib 
     --with-make-prog 
     --without-make-prog 
     --srcdir=. 
     --curdir 
     --ruby=C:/Ruby19/bin/ruby 


Gem files will remain installed in C:/Ruby19/lib/ruby/gems/1.9.1/gems/rmagick-2. 
12.2 for inspection. 
Results logged to C:/Ruby19/lib/ruby/gems/1.9.1/gems/rmagick-2.12.2/ext/RMagick/ 
gem_make.out 

回答

-1

一個簡單的谷歌搜索產生了一個非常有希望的結果:rmagick on windows。順便說一句,我猜你正在使用類似Ruby 1.8.5/1.8.7的東西,但是肯定不是3.3.5(如果你願意,請讓我加入你的時間旅行冒險,我們可以成爲朋友!)

2

你可以rmagick在Windows編譯命令:

gem install rmagick -- '--with-opt-dir="[path to ImageMagick]"' 

有三個關於這個命令值得關注的事情:

  1. 有一個雙破折號分離「 rmagick「和--with-opt-dir選項
  2. --with-opt-dir選項被單引號
  3. 到ImageMagick的目錄的路徑用雙引號

如果你使用這個語法,你可以在路徑ImageMagick的目錄空間包圍。我認爲該路徑也不關心向前或向後的斜槓,但我使用反斜槓。

你也必須確保其他兩件事情:

  1. ImageMagick的安裝與開發頭選項(安裝lib和include目錄)
  2. ImageMagick的是先在你的系統路徑

如果ImageMagick並非首先出現在系統路徑中,當extconf.rb嘗試識別ImageMagick版本時,將會出現「無效驅動器規格」錯誤。

所有這一切說,我已經經歷了與rmagick和ImageMagick的一些版本配對構建失敗。我能夠獲得ImageMagick 6.7.7和rmagick 2.13.1在Windows 7和Server 2003上一起構建。

+0

我添加了正確的變量在Windows環境中設置。 **這是我在stackoverflow **上找到的最佳答案,用於修復rmagick寶石問題。重要的方面是'gem install rmagick'命令中的單引號和雙引號,如上所示! –

+0

感謝您的信任投票。不要冒任何風險,但我發現花費很多努力試圖讓rails在windows上工作,而這樣的解決方法實在是不值得的。我建議在ubuntu vm上運行rails是一個比windows更好的解決方案(最好是有流浪者)。這是來自我作爲一個窗戶的傢伙。 我得到了[一篇文章](http://www.binaryphile.com/spree/a-vagrant-box-for-spree-development/)關於如何使用vagrant進行rails開發。 –

1

下載這個rmagick-2.13.2.gem寶石並保存在本地。

在打開命令提示符庫,其中的寶石文件所在並知道這運行以下CMD

gem install rmagick-2.13.2.gem --platform=ruby --with-opt-lib=C:/ImageMagick-6.6.7-Q16/lib --with-opt-include=c:/ImageMagick-6.6.7-Q16/include