2012-12-08 143 views
8

編輯:[修正] 問題是我已經安裝了它,但不知道,並試圖從源代碼安裝。這創建了兩個版本,並且該寶石不知道要使用哪個版本。我通過去下載的源代碼並運行來修復它RMagick gem無法安裝在Debian Stable上

sudo make uninstall 

然後我再次運行了gem install rmagick,它工作正常!

[原來的問題]

我想在this railscast安裝rmagick寶石等。這裏是什麼,我把我的Gemfile代碼片段:

gem 'rmagick' 
gem 'carrierwave' 

當我運行捆綁安裝,我得到以下的輸出:

Installing rmagick (2.13.1) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. 

     /home/techusb/.rbenv/versions/1.9.3-p125/bin/ruby extconf.rb 
checking for Ruby version >= 1.8.5... yes 
extconf.rb:128: Use RbConfig instead of obsolete and deprecated Config. 
checking for cc... yes 
checking for Magick-config... yes 

Warning: Found more than one ImageMagick installation. This could cause problems at runtime. 
     /usr/local/bin/Magick-config reports version 6.8.0 Q16 is installed in /usr/local 
     /usr/bin/Magick-config reports version 1.3.12 is installed in /usr 
Using 6.8.0 Q16 from /usr/local. 

checking for ImageMagick version >= 6.4.9... yes 
checking for HDRI disabled version of ImageMagick... yes 
checking for stdint.h... *** 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=/home/techusb/.rbenv/versions/1.9.3-p125/bin/ruby 
/home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The compiler failed to generate an executable file. (RuntimeError) 
You have to install development tools first. 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:506:in `try_cpp' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:931:in `block in have_header' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:280:in `postpone' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for' 
    from /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/1.9.1/mkmf.rb:930:in `have_header' 
    from extconf.rb:193:in `<main>' 


Gem files will remain installed in /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/gems/1.9.1/gems/rmagick-2.13.1 for inspection. 
Results logged to /home/techusb/.rbenv/versions/1.9.3-p125/lib/ruby/gems/1.9.1/gems/rmagick-2.13.1/ext/RMagick/gem_make.out 
An error occurred while installing rmagick (2.13.1), and Bundler cannot continue. 
Make sure that `gem install rmagick -v '2.13.1'` succeeds before bundling. 

對此行:

The compiler failed to generate an executable file. (RuntimeError) 
You have to install development tools first. 

我想我已經用盡了所有關於如何通過google/stackoverflow修復此錯誤的信息。我已經嘗試安裝開發包等。不知道該從哪裏出發。任何幫助不勝感激。

回答

20

=>https://stackoverflow.com/a/10647962/1420038;

「新的正確的方法是安裝libmagickwand-dev的:

命令和apt-get安裝libmagickwand-dev的 那麼你應該能夠安裝rmagick沒問題」

作品在debian 6.0.6

+1

確認。與Debian 7.8一起工作! – Stradivari

+1

和8.8以及 – Nathan

+0

和debian 9(伸展) - apt-get install libmagickwand-dev帶來60個依賴項,但是然後gem install rmagick工作! – iheggie