2016-10-14 2 views
10

У меня установлен только readline 7, и я не могу найти единственный способ установить версию 6 на macOS Sierra. Это ошибка при попытке запустить rails c:Консоль Rails 5 нуждается в readline 6 на macOS Sierra

/Users/akashagarwal/.rvm/gems/[email protected]/gems/activesupport-5.0.0.1/lib/active_support/dependencies.rb: 293: in `require ': dlopen (/Users/akashagarwal/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle, 9): библиотека не загружена:/usr/local/opt/readline/lib/libreadline.6.dylib (LoadError)
Репутация от: /Users/akashagarwal/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64- darwin15/readline.bundle Причина: изображение не найдено - /Users/akashagarwal/.rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/x86_64-darwin15/readline.bundle

+1

Пробовали ли вы переустановить рубин? Я думаю, что когда вы компилируете ruby, вы получаете его с поддержкой readline. Ваша ОС обновила readline, но ruby ​​все еще пытается использовать старую версию. – radubogdan

+0

@radubogdan вы на macOS Sierra? И в какую рубинскую версию вы? –

+0

К сожалению, я не, но все мои коллеги обновились, и у них не было никаких проблем. Используете ли вы rbenv/rvm или у вас есть рулон «запаса»? – radubogdan

ответ

23

У меня была аналогичная проблема, и решить ее с:

ln -s /usr/local/opt/readline/lib/libreadline.7.0.dylib /usr/local/opt/readline/lib/libreadline.6.dylib

Источник: https://github.com/rails/rails/issues/26658

+2

Это хакерский путь. Вы можете столкнуться с ошибками, которые вы не понимаете. Я обновил свою рубиновую версию с помощью rbenv и, следовательно, обновил рельсы. Теперь рельсы нуждаются в последней версии readline. –

8

лучший ответ, который работал хорошо для меня:

rbenv install -f 2.2.3 && RBENV_INSTALL=2.2.3 gem pristine --all

+0

Это лучший ответ –

1

Джим Мейер написал хороший ответ, но еще лучше блог.

В частности, это то, что должно быть сделано при условии, что вы используете rbenv и, возможно, также доморощенного установить Readline: (вырезать из Jim's blog post для потомков)

> xcode-select --install 
[... popup dialog launches and you do the install dance ...] 
> brew update && brew upgrade 
[... many package defs update and upgrade ... ] 
> for i in `rbenv versions --bare|xargs`; do rbenv install -f $i && RBENV_VERSION=$i gem pristine --all; done 
[... much building of ruby and gem native extensions for each installed ruby version ...] 
2

Я имел ту же ошибку, и это работает для меня.
Добавить gem 'rb-readline' в вашем Gemfile и bundle install

И просто введите bundle exec rails c

+0

Работал отлично, спасибо. – bkunzi01

Смежные вопросы