Проблемы с установкой Nokogiri - PullRequest
1 голос
/ 16 апреля 2011

Я новичок в RoR и работаю в терминале, так что хватит со мной :) Я следую учебнику http://ruby.railstutorial.org/ и пришел туда, где мне нужно установить эти гемы:

gem 'rails', '3.0.3'

gem 'sqlite3-ruby', :require => 'sqlite3'

group :development do
  gem 'rspec-rails', '2.0.1'
end

group :test do
  gem 'rspec', '2.0.1' 
  gem 'webrat', '0.7.1'
end

Тогда я делаю:

bundle install

Но терминал дает мне это:

Fetching source index for http://rubygems.org/
Using rake (0.8.7) 
Using abstract (1.0.0) 
Using activesupport (3.0.3) 
Using builder (2.1.2) 
Using i18n (0.5.0) 
Using activemodel (3.0.3) 
Using erubis (2.6.6) 
Using rack (1.2.2) 
Using rack-mount (0.6.14) 
Using rack-test (0.5.7) 
Using tzinfo (0.3.26) 
Using actionpack (3.0.3) 
Using mime-types (1.16) 
Using polyglot (0.3.1) 
Using treetop (1.4.9) 
Using mail (2.2.16) 
Using actionmailer (3.0.3) 
Using arel (2.0.9) 
Using activerecord (3.0.3) 
Using activeresource (3.0.3) 
Using bundler (1.0.12) 
Using diff-lcs (1.1.2) 
Installing nokogiri (1.4.4) /Library/Ruby/Site/1.8/rubygems/installer.rb:574:in `initialize': Permission denied - /Library/Ruby/Gems/1.8/gems/nokogiri-1.4.4/.autotest (Errno::EACCES)
from /Library/Ruby/Site/1.8/rubygems/installer.rb:574:in `open'

Я провел множество исследований по этому вопросу и нашел людей, у которых были такие же проблемы: http://taleswithrails.com/2011/01/error-gemfile-could-not-find-gem-webrat/

И я прочитал руководство по установке: http://nokogiri.org/tutorials/installing_nokogiri.html

Но я не могу получить:

sudo port ...

или

sudo apt-get ...

На работу. Они возвращаются с «команда не найдена». Поэтому я думаю, что у меня есть две проблемы здесь ...

1) Nokogiri не устанавливается должным образом, и я не знаю почему. Я также не знаю, какой «вкус» машины я использую (другими словами, какая из инструкций по установке Nokogiri относится к моей настройке).

2) Эти команды не работают в моей системе (OSX 10.6), и я не уверен почему. Я читал о Macports и libxml2, но мне немного неясно, что это такое и что мне нужно делать (или если это вообще применимо ко мне). Я попытался установить MacPort, но у меня нет XCode, который требуется. Но я не "разработчик Mac". Это мой единственный вариант?

Может ли кто-нибудь предложить какое-либо понимание? Это будет с благодарностью. Большое вам спасибо за ваше время, и я извиняюсь, если этот жалкий newbage ...

1 Ответ

1 голос
/ 16 апреля 2011

Таким образом, кажется, что у вас есть несколько разных проблем одновременно, и вам нужно разобраться с ними одна за другой.

Во-первых, вы можете запустить gem install Nokogiri в своем терминале, а затем попробовать использовать его в IRB, чтобы убедиться, что он работает?

Затем вы должны указать, что sudo apt-get - это команда для получения программного обеспечения с использованием aptitude, которое вы НЕ будете использовать на своем Mac, оно используется для Linux. sudo port использует macports для установки nokogiri, которая будет работать, только если у вас установлен Macports.

Я бы порекомендовал получить Homebrew и использовать brew install nokogiri

как только он будет работать локально в сценарии ruby, тогда беспокойтесь о rails.

Ошибка «Отказано в доступе», вероятно, вызвана тем, что вы использовали sudo там, где не должны быть, на Mac вы действительно никогда не должны использовать эту команду. Если вам нужно установить рубиновые самоцветы, загляните в RVM, который позволит вам установить «большинство» самоцветов без необходимости sudo

...