#ruby #bash #heroku
#ruby #bash #heroku
Вопрос:
Всякий раз, когда я открываю новое окно терминала, я теперь получаю:
-bash: /usr/local/bin/heroku: /usr/local/bin/ruby: bad interpreter: No such file or directory
Есть идеи относительно того, почему это происходит и как от этого избавиться?
Ответ №1:
Убедитесь, что первая строка файла /usr/local/bin/heroku
#!/path/to/ruby
. Возможно, вам потребуется изменить его с /usr/local/bin/ruby
на /usr/bin/ruby
, или, если вы не можете найти ruby
исполняемый файл, введите which ruby
или updatedb amp;amp; locate ruby
, чтобы найти его.
Если вышеуказанное не работает…
Проверьте свой ~/.bashrc
, ~/.inputrc~
, /etc/bashrc
, /etc/inputrc
, /etc/profile
на строку, пытающуюся выполнить /usr/local/bin/heroku
.
Другая идея заключается в том, что у вас может быть это как одна из ваших программ запуска. Проверьте /etc/inittab
строку с /usr/local/bin/heroku
помощью .
Если вы все еще не можете найти эту строку ни в одном из этих файлов, вы можете запустить grep -iH heroku /*
Ответ №2:
brew install wget
wget -qO- https://toolbelt.heroku.com/install.sh | sh
Ответ №3:
-bash: /usr/local/bin/heroku: /usr/local/bin/ruby: bad interpreter: No such file or directory
Сначала вы должны прочитать текст, который выдает терминал. /usr/local/bin/ruby: bad interpreter: No such file or directory
это означает, что ruby
в /usr/local/bin
. Так что, если у вас есть установка ruby
, но в другом каталоге. Вы можете использовать ln -s
для связывания /usr/local/bin/
каталога. Так что выясните это, например /usr/bin/ruby
. Вы можете попасть в /usr/local/bin/
каталог run ln -s /usr/bin/ruby
. Если вы еще не начали установку ruby
, вам следует установить ее и убедиться ruby
, что команда в /usr/local/bin
каталоге
Комментарии:
1. Я проголосовал против, потому что OP, очевидно, уже прочитал сообщение и спрашивает здесь, потому что им нужна помощь в понимании того, что это значит. «Вы должны сначала прочитать текст, который выдает терминал», просто пытается заставить их чувствовать себя плохо и бесполезно.
Ответ №4:
Как вы установили heroku? Если из исходного кода, вам следует перекомпилировать с соответствующими каталогами.
Вы можете редактировать /usr/local/bin/heroku
, но я думаю, что лучше, когда вы его перекомпилируете (кто знает, где в heroku больше плохих настроек).
Ответ №5:
У меня была аналогичная проблема, которая привела к следующему сообщению об ошибке, когда я попытался выполнить какие-либо команды heroku:
(~/).gem/ruby/1.8/bin/heroku: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: bad interpreter: No such file or directory
После некоторых поисков я нашел копию драгоценного камня heroku-api в ~/.gem/ruby/1.8/cache . Удаление его и удаление ссылочного файла rubygems в ~/.gem/ruby/1.8/bin решило проблему.
Ответ №6:
Я запускал «pod init» в каталоге. Это дало мне аналогичную ошибку:
-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory
Решение: установите Cocoapods, следуя инструкциям на их веб-сайте.