Проблема запуска драгоценных камней в OS X - PullRequest
1 голос
/ 18 марта 2010

Я использую Snow Leopard и установил собственный Ruby в соответствии с инструкциями здесь: http://hivelogic.com/articles/compiling-ruby-rubygems-and-rails-on-snow-leopard. Мой бинарный файл ruby ​​находится в каталоге usr / local / bin / ruby, а мои гемы установлены в / usr / local / bin / gem. Мой драгоценный камень выглядит так:

RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] - КАТАЛОГ УСТАНОВКИ: /Library/Ruby/Gems/1.8 - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby - ИСПОЛНИМЫЙ КАТАЛОГ: / usr / bin

Я думаю, что, возможно, установил установку, так как все действия, выполняемые с гемами, дают ошибку:

ОШИБКА: при выполнении gem ... (Errno :: EEXIST) Файл существует - / usr / local / bin / ruby ​​

Как вы редактируете переменные окружения для среды гемов? А для тех из вас, кто работает в OS X и использует рубин и гемы, что вы использовали, чтобы начать работать? Я думаю просто обнулить все и начать все заново.

Ответы [ 2 ]

0 голосов
/ 18 марта 2010

Команда "gem env" не сообщает о каких-либо путях к драгоценным камням? Шахта сообщает о нескольких путях драгоценных камней вместе с версией рубиновых камней и т. Д., Которые, по-видимому, ваш не делает.

RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0]
  - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8
  - RUBY EXECUTABLE: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - universal-darwin-10
  - GEM PATHS:
     - /Library/Ruby/Gems/1.8
     - /Users/steveweet/.gem/ruby/1.8
     - /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://gems.rubyforge.org/

Вы можете редактировать переменные окружения, связанные с gem, указав их в файлах запуска вашей оболочки (.bashrc для bash). Соответствующие переменные перечислены на странице environment веб-сайта gem. Вы хотите обратить особое внимание на GEM_HOME и GEM_PATH. Вы можете проверить их текущие настройки, набрав echo $ GEM_HOME в профиле оболочки

Я бы предположил, что вашим лучшим действием в данный момент может быть возврат к вашей стандартной установке ruby, как это предусмотрено в OS / X, а затем загрузка и установка rvm (Менеджер версий Ruby) затем посмотрите скринкаст Райана Бейтса

0 голосов
/ 18 марта 2010

Похоже, что ваша установка ruby ​​в / usr / local / bin - это не тот ruby, который вы получаете, что, вероятно, означает, что / usr / local / bin / отсутствует в вашем PATH Если вы хотите запустить этот ruby, попробуйте отредактировать ваш файл .bash_profile, добавив / usr / local / bin следующим образом:

экспорт PATH = / usr / local / bin: $ PATH

Кроме того, вы можете добавить путь к файлу в /etc/paths.d, который является предпочтительным методом для добавления путей глобально в системе OS X.


Я пробовал вещи тремя разными способами, каждый с разными результатами. У меня есть системы с установкой по умолчанию (/ usr / bin), ручной сборкой / usr / local / bin и портами Mac в / opt / local / bin.

На сегодняшний день самым простым является использование встроенного двоичного файла, который на 10.6.2 является ruby ​​1.8.7. В этой схеме гемы устанавливаются в / Library / Ruby / Gems. Второй самый простой - это MacPorts (sudo port install ruby), третий - метод полностью из исходного кода, который вы описали выше. Конечно, есть веские причины, по которым люди устанавливают из исходников, но если вы не пытаетесь запустить ruby ​​1.9 или другую версию, вам лучше всего использовать встроенный ruby ​​1.8.7.

...