簡體   English   中英

Nokogiri寶石安裝錯誤與狂歡

[英]Nokogiri gem installation error with spree

我嘗試捆綁安裝時遇到此錯誤

Bundler::GemspecError: Could not read gem at /home/theareba/.rvm/gems/ruby-2.0.0-p353/cache/nokogiri-1.6.1.gem. It may be corrupted.
An error occurred while installing nokogiri (1.6.1), and Bundler cannot
continue.
Make sure that `gem install nokogiri -v '1.6.1'` succeeds before bundling.

我已經嘗試在緩存中刪除nokogiri並再次捆綁安裝是徒勞的。 這是我的寶石文件

source 'https://rubygems.org'
gem 'rails', '4.0.0'
ruby "2.0.0"

gem 'spree_auth_devise', github: 'spree/spree_auth_devise', branch: '2-1-stable'
gem 'spree', github: 'spree/spree', branch: '2-1-stable'
gem 'bootstrap-sass', '2.3.2.0'

gem 'sass-rails' 
gem 'uglifier'
gem 'coffee-rails'
gem 'jquery-rails'
gem 'turbolinks'
gem 'jbuilder'

group :development, :test do
  gem 'turn', :require => false 
  gem 'sqlite3'
  gem 'taps', :require => false
  gem 'rspec-rails'
end

group :production do
  gem 'pg', '0.15.1'
  gem 'rails_12factor'
end

更新我運行gem install nokogiri -v'1.6.0'時發生的錯誤

Fetching: mini_portile-0.5.2.gem (100%)
Fetching: nokogiri-1.6.0.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing nokogiri:
    ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- mkmf (LoadError)
    from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
    from extconf.rb:5:in `<main>'


Gem files will remain installed in /var/lib/gems/1.9.1/gems/nokogiri-1.6.0 for inspection.
Results logged to /var/lib/gems/1.9.1/gems/nokogiri-1.6.0/ext/nokogiri/gem_make.out

注意:我已經安裝了libxslt1-devlibxml2-dev ,它們是nokogiri安裝中的要求。 我也嘗試過gem install nokogiri -v '1.6.1'但它仍然失敗了。 我已經在另一個應用程序中安裝了nokogiri -v 1.5.0,所以我在這個應用程序中嘗試了它並且得到了狂歡需要nokogiri版本1.6.0或更高版本的錯誤。 我錯過了什么?

所以這就解決了我的問題。 我創建了一個新的gemset即

rvm gemset create nokogiri
rvm use ruby-2.0.0-p353@nokogiri

注意:我正在使用rvm和ruby 2.0.0。 然后我確保通過運行安裝了必要的lib

sudo apt-get install  libxml2-dev libxslt-dev

這些庫恰好已經安裝好了。 然后我安裝了nokogiri

gem install nokogiri -v '1.6.1'

它安裝成功。 最后運行bundle install來獲取我的所有寶石。 希望這有助於任何人遇到同樣的問題。

檢查RVM gemset。 我通過恢復gemset來修復它。 如果您嘗試升級到4.0.2? 我使用Nokogiri 1.6.1和Ruby 2.0.0以及Rails 4.0.2

試試這個

sudo apt-get install ruby-dev
sudo apt-get install libxml2 libxml2-dev libxslt1-dev


並重新安裝nokogiri

sudo gem install nokogiri

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM