Ошибка установки рельсов в Ubuntu 10.04 - PullRequest
22 голосов
/ 11 ноября 2010

Я пытаюсь установить рельсы на Ubuntu 10.04. Пока что я выполнил следующие команды:

apt-get install build-essential libapache2-mod-passenger apache2 rubygems ruby1.8-dev libopenssl-ruby
gem install fastthread
gem install rails

Fastthread устанавливается легко. Однако, попытка установить рельсы приводит к:

ERROR:  Error installing rails:
    bundler requires RubyGems version >= 1.3.6

Итак, я попытался gem -v, который вернул 1.3.5.

Как мне обновить rubygems? apt-get не устанавливается выше 1.3.5. И gem update --system приводит к:

ERROR:  While executing gem ... (RuntimeError)
    gem update --system is disabled on Debian. RubyGems can be updated using the official Debian repositories by aptitude or apt-get.

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

Как примечание, я попробовал установить рельсы через apt-get install rails, который, казалось, работал, но я не вижу rails как драгоценный камень, когда я печатаю gem list. Что с этим делать?

Еще одно примечание: результат gem list:

*** LOCAL GEMS ***

abstract (1.0.0)
actionmailer (3.0.1, 3.0.0)
actionpack (3.0.1, 3.0.0)
activemodel (3.0.1, 3.0.0)
activerecord (3.0.1, 3.0.0)
activeresource (3.0.1, 3.0.0)
activesupport (3.0.1, 3.0.0)
arel (2.0.1, 1.0.1)
builder (2.1.2)
erubis (2.6.6)
fastthread (1.0.7)
i18n (0.4.2)
mail (2.2.9)
mime-types (1.16)
mysql (2.8.1)
polyglot (0.3.1)
rack (1.2.1)
rack-mount (0.6.13)
rack-test (0.5.6)
railties (3.0.1, 3.0.0)
rake (0.8.7)
rubygems-update (1.3.7)
thor (0.14.4)
treetop (1.4.8)
tzinfo (0.3.23)

Я предполагаю, что установка rails через apt-get установила эти драгоценные камни? До установки рельсов через apt-get у меня были только mysql и fastthread.

Ответы [ 5 ]

42 голосов
/ 23 июня 2011

Существует также доступный драгоценный камень, который обрабатывает обновление

sudo gem install rubygems-update
sudo /var/lib/gems/1.8/bin/update_rubygems
6 голосов
/ 11 ноября 2010

Установите rvm и возьмите под контроль свою среду ruby.

http://rvm.io/

6 голосов
/ 11 ноября 2010

Вы должны вручную установить rubygems 1.3.7 (wget с сайта, распаковать, запустить setup.rb).

2 голосов
/ 02 июня 2012

Это может быть новый способ сделать это, который не был доступен раньше, но я запустил

sudo gem update --system

и это дало мне последнюю версию.

1 голос
/ 11 ноября 2010

По какой-то причине в пакет Debian / Ubuntu Ruby не входит библиотека RubyGems.Хуже того, RubyGems был включен в Ruby 1.9.x, но если вы попытаетесь установить его через apt-get, менеджер пакетов заставит вас установить их как два отдельных пакета.

Пакет Debian / Ubuntu RubyGemsкак вы заметили, устаревшие и усложняющие ситуацию, вы не можете обновить упакованную версию RubyGems, просто установив поверх нее новые версии RubyGems, поскольку система исправлена, чтобы предотвратить выполнение задачи, как вы уже видели.

Я предлагаю не использовать пакетную версию Ubuntu / Debian.Альтернативы:

  1. для системы разработки, используйте RVM
  2. для производственного сервера, установите Ruby из исходного кода.Если вы хотите, чтобы Ruby <1.9, вы можете использовать версию Ruby Enterprise, которая также доступна в виде пакета Debian / Ubuntu.Если вы хотите Ruby 1.9.x, скомпилируйте его из исходного кода. </li>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...