Ошибки с Vagrant и Ubuntu 12.10 с RVM

Установил Vagrant через sudo apt-get install vagrant, и каждый раз, когда я пытаюсь запустить какую-нибудь команду vagrant, такую ​​как vagrant init precise32 http://files.vagrantup.com/precise32.box, я получаю следующую ошибку:

/home/novito/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- log4r (LoadError)
    from /home/novito/.rvm/rubies/ruby-2.0.0-p195/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
    from /usr/bin/vagrant:2:in `<main>'

Не уверен, почему здесь участвует rvm, но да ладно, я надеюсь, что вы, ребята, поможете мне решить эту проблему.

4
задан 28 June 2013 в 19:12

4 ответа

После того, как я скачал и установил Vagrant со страницы загрузки , ошибка исчезла.

0
ответ дан 28 June 2013 в 19:12

Когда вы установили Vagrant, используя apt-get, он установил бы все его необходимые зависимости для стандартной версии Ruby в Ubuntu. Но ваше сообщение об ошибке указывает на то, что при запуске vagrant он пытается использовать версию Ruby (и ее Gems), которая управляется RVM, а не системную версию, а в вашей версии Ruby отсутствует хотя бы одна из его зависимостей. , log4r.

Я думаю, что у вас есть несколько вариантов:

  1. Вернитесь к использованию системной (стандартной Ubuntu) версии Ruby, запустив что-то вроде rvm use system --default для сброса RVM по умолчанию и изменяя только версии Ruby. когда вам нужно.
  2. Вернитесь к системной версии только при запуске Vagrant, поэтому запустите rvm use system перед запуском vagrant в той же оболочке.
  3. Определите все камни Ruby, от которых зависит Vagrant, и установите их вручную в своей установке Ruby, управляемой RVM. Это был бы неоправданный подход. Раньше можно было установить сам Vagrant как Ruby Gem, так что вы могли установить его в своей установке Ruby под управлением RVM, но это больше не поддерживается.

См. Документацию по опциям команды RVM для более подробной информации о том, какую версию Ruby вы используете.

0
ответ дан 28 June 2013 в 19:12

У меня дома была установлена ​​старая пользовательская среда ruby ​​(~/.rbenv), и это явно переопределяет все системные пакеты Ruby по умолчанию. Когда я удалил эту папку, Vagrant начал работать просто отлично.

0
ответ дан 28 June 2013 в 19:12

У меня тоже была эта проблема. Как оказалось, по-видимому, вам нужен ruby ​​1.9.3. Я установил Vagrant из исходного кода с 2.0.0, и вышеупомянутая ошибка происходила до тех пор, пока я не переустановил гем с ruby ​​1.9.3.

0
ответ дан 28 June 2013 в 19:12

Другие вопросы по тегам:

Похожие вопросы: