Я установил Ruby с помощью RVM.
Я выполнил команду gem install rspec, и она, кажется, правильно установила rspec. Если я делаю rspec, я получаю «Программа rspec в настоящее время не установлена», и мне предлагается apt-get.
Если я снова попытаюсь выполнить установку gem rspec, это покажет, что rspec уже установлен. Я попытался выполнить sudo gem install rspec, думая, что это может быть проблема с правами доступа, но затем терминал сказал, что программа gem не установлена.
Как я могу запускать программы, в которых у меня установлен «гем» в Ubuntu, не прибегая к «apt-get»?
Когда вы используете rbenv вместо RVM, у вас есть опция для запуска rbenv rehash
, которая установит путь к бинарным файлам, чтобы вы могли использовать его. Кроме того, вам нужно запускать rbenv rehash
каждый раз, когда вы устанавливаете новый гем, который предоставляет двоичные файлы.
У меня вообще не было rvm в Ubuntu 15.04. Решением было установить пакет rbenv
. Теперь все, что я установил с помощью "gem install", теперь можно выполнить.
Моя проблема заключалась в том, что версия ruby из моей среды гемов отличалась от версии ruby из rvm.
Я использовал команды
gem env
which ruby
Для диагностики проблемы. Это дало мне версию ruby, используемую gem и rvm, а затем использовала
rvm use <ruby-version>
для соответствия двум версиям ruby.
Я сделал сообщение в блоге с более подробной информацией: Проблемы с запуском исполняемого файла из гема, установленного в rvm