2012-07-19 45 views
3

我是想,因爲它需要安裝引入nokogiri的軌道可啓動錯誤與Mac上安裝引入nokogiri當「sudo的創業板安裝引入nokogiri」

$ rails s 
/usr/local/rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/spec_set.rb:90:in `block in materialize': Could not find nokogiri-1.5.5 in any of the sources (Bundler::GemNotFound) 
    from /usr/local/rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/spec_set.rb:83:in `map!' 
    from /usr/local/rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/spec_set.rb:83:in `materialize' 
    from /usr/local/rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/definition.rb:127:in `specs' 
    from /usr/local/rvm/gems/[email protected]/gems/bundler-1.1.5/lib/bundler/environment.rb:27:in `specs' 
    from /usr/local/rvm/gems/[email protected]/gems/rubygems-bundler-1.0.3/lib/rubygems-bundler/noexec.rb:41:in `candidate?' 
    from /usr/local/rvm/gems/[email protected]/gems/rubygems-bundler-1.0.3/lib/rubygems-bundler/noexec.rb:60:in `setup' 
    from /usr/local/rvm/gems/[email protected]/gems/rubygems-bundler-1.0.3/lib/rubygems-bundler/noexec.rb:75:in `<top (required)>' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `require' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:60:in `rescue in require' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require' 
    from /usr/local/rvm/gems/ruby-1.9.3-p194/bin/ruby_noexec_wrapper:9:in `<main>' 

然而,它沒有當我試圖與安裝引入nokogiri命令

$ sudo gem install nokogiri 

這是錯誤。

$ sudo gem install nokogiri 
Building native extensions. This could take a while... 
ERROR: Error installing nokogiri: 
    ERROR: Failed to build gem native extension. 

     /usr/local/rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb 
checking for libxml/parser.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 
    --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=/usr/local/rvm/rubies/ruby-1.9.3-p194/bin/ruby 
    --with-zlib-dir 
    --without-zlib-dir 
    --with-zlib-include 
    --without-zlib-include=${zlib-dir}/include 
    --with-zlib-lib 
    --without-zlib-lib=${zlib-dir}/lib 
    --with-iconv-dir 
    --without-iconv-dir 
    --with-iconv-include 
    --without-iconv-include=${iconv-dir}/include 
    --with-iconv-lib 
    --without-iconv-lib=${iconv-dir}/lib 
    --with-xml2-dir 
    --without-xml2-dir 
    --with-xml2-include 
    --without-xml2-include=${xml2-dir}/include 
    --with-xml2-lib 
    --without-xml2-lib=${xml2-dir}/lib 
    --with-xslt-dir 
    --without-xslt-dir 
    --with-xslt-include 
    --without-xslt-include=${xslt-dir}/include 
    --with-xslt-lib 
    --without-xslt-lib=${xslt-dir}/lib 
    --with-libxslt-config 
    --without-libxslt-config 
    --with-pkg-config 
    --without-pkg-config 
    --with-libxml-2.0-config 
    --without-libxml-2.0-config 
    --with-libiconv-config 
    --without-libiconv-config 
/usr/local/rvm/rubies/ruby-1.9.3-p194/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 /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:506:in `try_cpp' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:970:in `block in find_header' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:280:in `postpone' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for' 
    from /usr/local/rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:969:in `find_header' 
    from extconf.rb:114:in `<main>' 


Gem files will remain installed in /usr/local/rvm/gems/ruby-1.9.3-p194/gems/nokogiri-1.5.5 for inspection. 
Results logged to /usr/local/rvm/gems/ruby-1.9.3-p194/gems/nokogiri-1.5.5/ext/nokogiri/gem_make.out 
+0

可能是一樣的在這裏交配http://stackoverflow.com/questions/2075757/errors-installing-some-gems-on -Snow豹-了libx ml2 – 2012-07-19 19:48:04

+0

http://nokogiri.org/tutorials/installing_nokogiri.html – Gazler 2012-07-19 19:49:53

回答

1

看起來你需要安裝Xcode。

1

你得到這個錯誤的原因是因爲nokogiri gem包含需要在你的機器上運行前編譯的C/C++擴展。

只需安裝XCode就無法修復它 - 您需要專門安裝XCode命令行工具,它是一個C/C++編譯器/鏈接器工具鏈,當您安裝XCode時,默認情況下未安裝該工具鏈。

有到Xcode的圖形用戶界面內的菜單內安裝它們的選項,看到這個線程的截圖:

Xcode 4.4 and later install Command Line Tools

如果你已經這樣做了,那麼你可能需要創建一個符號鏈接到你的編譯器,你的操作系統知道哪裏可以找到它:

Installing nokogiri Mac OS X 10.8.2 XCode installed