2013-03-05 177 views
3

我在嘗試在Windows 7計算機上設置RoR時出現了一些錯誤。我使用RubyInstaller和DevKit安裝了Ruby。在他們的說明中,它表示要執行gem install rdiscount --platform=ruby以確保其安裝正確。我得到以下錯誤:在Windows上安裝RubyInstaller和DevKit後無法安裝rdiscount gem

C:\Windows\system32>cd ../../DevKit 

C:\DevKit>gem install rdiscount --platform=ruby 
Temporarily enhancing PATH to include DevKit... 
Building native extensions. This could take a while... 
ERROR: Error installing rdiscount: 
     ERROR: Failed to build gem native extension. 

    C:/Ruby200-x64/bin/ruby.exe extconf.rb 
checking for random()... *** 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:/Ruby200-x64/bin/ruby 
     --with-rdiscount-dir 
     --without-rdiscount-dir 
     --with-rdiscount-include 
     --without-rdiscount-include=${rdiscount-dir}/include 
     --with-rdiscount-lib 
     --without-rdiscount-lib=${rdiscount-dir}/ 
C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:431:in `try_do': The compiler failed to ge 
nerate an executable file. (RuntimeError) 
You have to install development tools first. 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:516:in `try_link0' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:531:in `try_link' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:717:in `try_func' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:1001:in `block in have_func' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:892:in `block in checking_for 
' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:337:in `block (2 levels) in p 
ostpone' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:307:in `open' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:337:in `block in postpone' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:307:in `open' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:333:in `postpone' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:891:in `checking_for' 
     from C:/Ruby200-x64/lib/ruby/2.0.0/mkmf.rb:1000:in `have_func' 
     from extconf.rb:5:in `<main>' 


Gem files will remain installed in C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/rdisc 
ount-2.0.7.1 for inspection. 
Results logged to C:/Ruby200-x64/lib/ruby/gems/2.0.0/gems/rdiscount-2.0.7.1/ext/ 
gem_make.out 

我試過this suggestion,並刪除重複文件libiconv-2.dll但問題一直持續。有什麼建議麼?

回答

3

此時,RDiscount在Windows損壞,看看issue #74 at GitHub

如果您已經安裝Ruby和的devkit,那麼你可以安裝其他的寶石一樣jsonRedCloth,以驗證其編譯正確:

gem install json --platform=ruby 
gem install RedCloth --platform=ruby 

希望有所幫助。