Ответ 1
То, что вы получаете, означает, что Homebrew не смог найти интерпретатор Ruby в указанном месте.
Установите Apple Developer Kit (поставляется с Xcode), который должен быть доступен вам как дополнительная установка (или вы можете просто загрузить его с Apple). Это установит для вас интерпретатор Ruby.
Если у вас уже установлен Xcode, это означает, что происходит одна из следующих вещей:
- У вас сломанная установка Ruby.
- У вас более одной установки Ruby.
- Ваша установка не была правильно настроена.
Чтобы определить, является ли это первым случаем, вы можете запустить ruby
и посмотреть, есть ли у вас какой-либо ответ.
Если вы этого не сделаете, ваша установка будет нарушена, и вам нужно будет переустановить ее. Если вы это сделаете, вы запустите which ruby
. Это должно дать вам абсолютный путь к исполняемому файлу Ruby. Если это не что иное, как /usr/bin/ruby
, то homebrew (и куча других программ) не сможет его найти.
Если вы никогда не пытались выполнить установку Ruby, вы можете проверить, существует ли /usr/bin/ruby
или нет: cat /usr/bin/ruby
. Если вы получите No such file or directory
, вы можете легко создать символическую ссылку на свою установку Ruby. Предполагая, что вывод which ruby
на /usr/local/bin/ruby
, вы создаете символическую ссылку таким образом: sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
и все должно быть хорошо.
Если в этом месте есть файл, вы можете запустить file /usr/bin/ruby
, чтобы увидеть, является ли он реальным файлом, символической ссылкой или поврежденным файлом. Если это символическая ссылка, ваша установка должна работать, а так как это не так, возможно, это либо поврежденная символическая ссылка, либо фиктивный файл.
Вы можете исправить это, удалив сначала его (sudo rm /usr/bin/ruby
), а затем создав новую символическую ссылку в нужное место (sudo ln -s /usr/local/bin/ruby /usr/bin/ruby
).
Если не указано выше, вы должны проконсультироваться с командой доморощенного после чистой установки Xcode и удалить любые следы установки Ruby в вашей системе.
ИЗМЕНИТЬ
В качестве альтернативы, как указывалось другими ответами, проблема может быть вызвана плохой версией рубина в настройках Homebrew.
Быстрое исправление может быть обновлением вашего Homebrew:
cd /usr/local
git pull -q origin refs/heads/master:refs/remotes/origin/master
Если это не помогает, возможно, вы захотите, чтобы ваши руки были грязными и вручную исправили проблему, нажав
- Редактирование
brew.rb
из/user/local/Library/brew.rb
- Изменение
/1.8/
до/Current/
в первой строке, что приведет к тому, что хеш-банд укажет на текущую версию Ruby как исполнитель
Если это также не поможет, вы также можете изменить проверку MACOS
и изменить ее с 10,5 до 10, чтобы избежать позорной ошибки "Домашний зародыш требует Leopard или выше".
ОТКАЗ
Благодарим других участников в ответах ниже и их комментаторах. Я не совершаю плагиат, просто объединяю ответы в одну интегрированную статью, чтобы помочь другим.