qichunren@zhaobak:~> gem install hpricot
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /opt/ruby-enterprise-1.8.7/lib/ruby/gems/1.8 directory.
Текущий зарегистрированный пользователь является qichunren, и у qichunre пользователя есть разрешение записи с .gem dir. Я хотел бы знать, почему драгоценный камень не устанавливает файлы в мой дом .gem dir сначала? Почему мой драгоценный камень, распространенный первый, хочет установить файлы в/opt/ruby-enterprise-1.8.7/lib/ruby/gems/1.8
Для общесистемной установки Ruby станьте пользователем root. Например:
$ sudo gem install hpricot
Однако современный подход во многих случаях, в том числе при разработке, заключается в использовании инструмента, который позволяет легко установить и использовать Ruby как обычный пользователь. Это позволяет избежать необходимости становиться root. Таких инструментов несколько, и я использую RVM .
# install rvm into your ~
$ \curl -sSL https://get.rvm.io | bash -s stable
# install latest version of ruby into your ~
$ rvm install ruby
# installs a gem into your ~
$ gem install $SOME_GEM_NAME
Попробуйте установить GEM_HOME
и GEM_PATH
на ~/.gem
,
Для текущего сеанса терминала просто введите:
export GEM_HOME=~/.gem
export GEM_PATH=~/.gem
Если вы хотите, чтобы они были установлены при каждом открытии терминала, добавьте вышеуказанные команды в файл ~/.bashrc
.
Более полное решение для настройки пользовательской среды Ruby см. в этом учебнике от Site5KB, в котором описывается использование файла .gemrc
.