2013-05-13 137 views
2

我似乎無法在窗口上安裝薄寶石。 一個非常類似的問題被問到here,然而在綁定所有答案後,它仍然不起作用。在Windows上安裝Thin時失敗

跟蹤:

C:/Ruby193/bin/ruby.exe extconf.rb 
checking for main() in -lc... *** 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:/Ruby193/bin/ruby 
    --with-thin_parser-dir 
    --without-thin_parser-dir 
    --with-thin_parser-include 
    --without-thin_parser-include=${thin_parser-dir}/include 
    --with-thin_parser-lib 
    --without-thin_parser-lib=${thin_parser-dir}/lib 
    --with-clib 
    --without-clib 
C:/Ruby193/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 C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:461:in `try_link0' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:476:in `try_link' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:619:in `try_func' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:845:in `block in have_library' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:280:in `postpone' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for' 
    from C:/Ruby193/lib/ruby/1.9.1/mkmf.rb:840:in `have_library' 
    from extconf.rb:4:in `<main>' 

從RubyInstaller的devkit的Windows已經安裝完畢。
Timemachine已安裝。

其他寶石工作得很好。 有人遇到相同或相似的問題嗎?
使用Windows 7 Professional和最新的1.9 Ruby。

同時,我還發現this問題。這些註釋引用了上面提到的問題,可能的解決方案是重新安裝Xcode。但我沒有使用Xcode,也沒有安裝它。

+0

Xcode是一個OSX的東西,而不是贏。你的問題是:它以某種方式找不到DevKit安裝。所以你需要仔細找出它的原因。 – 2013-05-13 19:13:05

+0

感謝您的評論,我瞭解Xcode是針對OSX的。 DevKit已安裝並且似乎已正確配置;配置文件包含了寶石的路徑。 – 2013-05-15 20:29:11

回答

0

我剛剛安裝了錯誤的錯誤,並且最初的樣子看起來像你的。

問題是devkitvars.bat沒有運行。如果你先運行這個,然後做一個寶石安裝薄..

C:\<PATHTODEVKIT>\devkitvars.bat 

根據您的設置,你會進步。

問題是,我的紅寶石和devkit的初始安裝在一個有空格的目錄中。有時我不覺得計算機科學已經取得進展..

因此,我移動了目錄,更改了環境路徑變量以及註冊表變量,並驗證了ruby安裝。

然後我:

del <devkitdir>\config.yml 
ruby dk.rb init 
ruby dk.rb install 

gem install thin 

我收到了你的錯誤。

這是長期解決方案的來源。

在[RubyDir] \ lib \ ruby​​ \ site-ruby目錄中,有一個名爲devkit.rb的文件未被更改。

也許如果我刪除了這個文件,dk.rb安裝會生成它(假設他們使用make來移動這個文件在這裏,而不是檢查註冊表項或任何東西)。但我編輯了它,並將開發工具位置的路徑更改爲新的位置。

這就結束了你的錯誤。我也收到了與您參考的頁面相關的錯誤。我遵循其中的一種解決方案:

$ gem install specific_install 
$ gem specific_install -l http://github.com/eventmachine/eventmachine.git 

gem install thin 

髖關節髖關節!

希望這會有所幫助。