Невозможно запустить сервер rails - PullRequest
5 голосов
/ 01 февраля 2011

Я установил рельсы и MySQL. Я также установил MySQL Gem. Я создал приложение рельсы по команде rails new try_cms -d mysql Он был успешно создан. Но когда я пытаюсь запустить сервер WEBrick с помощью команды rails server, я получаю следующие ошибки:

/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle: dlopen(/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.16.dylib (LoadError)
  Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
  Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
    from /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2.rb:7
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler/runtime.rb:68:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler/runtime.rb:68:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler/runtime.rb:66:in `each'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler/runtime.rb:66:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler/runtime.rb:55:in `each'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler/runtime.rb:55:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.9/lib/bundler.rb:114:in `require'
    from /Users/dilippednekar/Sites/try_cms/config/application.rb:7
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:28:in `require'
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:28
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:27:in `tap'
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.3/lib/rails/commands.rb:27
    from script/rails:6:in `require'
    from script/rails:6

Заранее спасибо.

Ответы [ 7 ]

6 голосов
/ 01 февраля 2011

Попробуйте запустить это (см. Аналогичный вопрос здесь )

sudo install_name_tool -change libmysqlclient.16.dylib /usr/local/mysql/lib/libmysqlclient.16.dylib /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
4 голосов
/ 04 апреля 2011

Просто столкнулся с этой проблемой сам. Убедитесь, что вы обновили номера версий.

sudo install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysq

2 голосов
/ 22 марта 2011

У меня были похожие проблемы. Решение, которое работало для меня, было найдено здесь .

2 голосов
/ 17 марта 2011

По какой-то причине файл mysql2.bundle не был в моем драгоценном камне mysql2.Я запустил

 gem uninstall mysql2

, и камень был удален.Затем я немедленно запустил

sudo gem install mysql2

Затем

sudo install_name_tool -change libmysqlclient.16.dylib /usr/local/mysql/lib/libmysqlclient.16.dylib /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle

Наконец rails s запустил сервер!

1 голос
/ 15 декабря 2011

Если вы хотите что-то менее навязчивое, просто установите переменную окружения DYLD_LIBRARY_PATH в направлении lib вашего MySQL.

export DYLD_LIBRARY_PATH=$MYSQL_HOME/lib
0 голосов
/ 22 сентября 2011

Меня просто поразило это с использованием Rails 3.1.0, ruby-1.9.2-p290 и mysql2 0.3.7.Мое решение заключалось в том, чтобы перейти на MySQL 2.8.1.Пока все выглядит хорошо (я даже не смог запустить среду).

0 голосов
/ 02 февраля 2011
sudo apt-get install libmysqlclient15-dev libmysqlclient15off libmysql-ruby
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...