2013-06-20 40 views
19

Cố gắng để chạy ứng dụng Rails nhân bản. Khi chạy bundle install tôi nhận được lỗi này:Lỗi Nokogiri khi chạy gói cài đặt

Using mini_portile (0.5.0) 
Installing nokogiri (1.6.0) 
Gem::InstallError: nokogiri requires Ruby version >= 1.9.2. 
An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue. 
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling. 

Nhưng đây là đầu ra cho rbenv version:

› rbenv version 
1.9.3-p429 (set by /Users/andrewguo/.rbenv/version) 

Khi chạy gem list tôi nhận được:

. 
. 
. 
mini_portile (0.5.0) 
minitest (2.5.1) 
multi_json (1.7.7) 
nokogiri (1.6.0) 

Tôi đã làm đau đớn não của tôi trong một giờ đồng hồ cố gắng tìm hiểu xem điều gì có thể sai ... Xin hãy giúp!

Edit:

Dưới đây là một đầu ra lỗi tiết hơn:

An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue. 
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling. 
Bundler::InstallError: An error occurred while installing nokogiri (1.6.0), and Bundler cannot continue. 
Make sure that `gem install nokogiri -v '1.6.0'` succeeds before bundling. 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:130:in `install_gem_from_spec' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:91:in `run' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:90:in `run' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/installer.rb:14:in `install' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/cli.rb:247:in `install' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `__send__' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/task.rb:27:in `run' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/invocation.rb:120:in `invoke_task' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor.rb:344:in `dispatch' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/vendor/thor/base.rb:434:in `start' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/bin/bundle:20 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/lib/bundler/friendly_errors.rb:3:in `with_friendly_errors' 
/Library/Ruby/Gems/1.8/gems/bundler-1.3.5/bin/bundle:20 
/usr/bin/bundle:19:in `load' 
/usr/bin/bundle:19 

Trả lời

12

Hóa ra tôi đã sử dụng hệ thống mặc định Ruby (và do đó cài đặt tất cả các đá quý ở đó trong /Library/Ruby/Gems) mặc dù điểm rbenv thành ruby-1.9.3 vì vậy đó là lý do tại sao Nokogiri đang phàn nàn.

Cố định này bằng cách thêm này đến $ PATH, tải nên rbenv trước khi hệ thống ruby:

export PATH="$HOME/.rbenv/bin:$PATH"

5

Hãy thử sử dụng một phiên bản cũ của nokogiri, nó làm việc cho tôi

đá quý 'nokogiri', '1.5.9'

+0

cách sử dụng? viết vào tập tin đá quý? – user151968

1

Cài đặt phiên bản cũ bằng lệnh này: gem install nokogiri -v 1.5.5

11

chắc chắn rằng bạn có phiên bản mới nhất của công cụ dòng lệnh. nếu bạn không chắc chắn chỉ cần chạy xcode-select --install và điều này sẽ bật lên một gui tốt đẹp để hướng dẫn bạn thông qua quá trình cài đặt. bạn cũng có thể kiểm tra cửa hàng ứng dụng mac để xem bạn có bản cập nhật nào đang chờ bạn không. phiên bản hiện tại là Command Line Developer Tool for OS X 10.10 để bạn có thể xem liệu Yosemite có gặp vấn đề gì với điều đó không. sau khi nhận được bản cập nhật, hãy chạy sudo bundle install và bạn có thể có phiên bản mới nhất của nokogiri. chúc may mắn.

16

Tôi chạy vào lỗi này và đây là những gì làm việc cho tôi:

bundle config build.nokogiri --use-system-libraries 
bundle install 

Vấn đề là với libxml:

libxml2 is missing. Please locate mkmf.log to investigate how it is failing. 
+1

Tiếp theo đã làm việc cho tôi: sudo gem cài đặt nokogiri -v '1.6.6.2' - --use-system-libraries --with-xml2-include =/usr/include/libxml2 --with-xml2-lib =/usr/lib – mvladk

2

Nếu đồng googler là sử dụng Linux (ubuntu) sau đó cài đặt deb gói zlib1g-dev đã giúp

2

Làm như sau cho tôi:

gem install nokogiri -- --use-system-libraries 
25

Tôi đang sử dụng Mac OSX (El Capitan) và dường như có liên quan đến Công cụ dành cho nhà phát triển Xcode. Tôi chạy xcode-select --install trong thư mục làm việc của mình, sau đó chạy lại bundle install lệnh và tất cả đều hoạt động tốt sau đó ^^.

Hy vọng điều này có thể giúp ai đó.

+0

Điều này cũng làm việc với macOS Sierra. – Aaaron

Các vấn đề liên quan