Проблема связана с тем, что в mysql2 отсутствует динамическая библиотека из MySQL.
Более чистое решение, чем install_name_tool ...
, должно обновить DYLD_LIBRARY_PATH
, чтобы добавить в него библиотеки MySQL. Для этого обновите ~/.bash_profile
и добавьте папку библиотеки MySQL:
export DYLD_LIBRARY_PATH="/usr/local/mysql/lib:$DYLD_LIBRARY_PATH"
Примечание. Возможно, вы захотите обновить расположение MySQL в зависимости от вашей установки
Это должно содержать вещи в чистоте, а также гарантировать, что любой гем или код, требующий динамических библиотек MySQL, найдут их.
Ссылка: http://lightyearsoftware.com/2011/02/mysql-5-5-on-mac-os-x/
Справочное обновление июль 2012 г .: Изменение в OS X 10.8 делает простой способ, описанный выше, менее изящным. Если вы установите эту переменную, каждый раз, когда вы запускаете программу setuid или setgid, вы получаете следующее предупреждение на stderr:
dyld: DYLD_ environment variables being ignored because main executable (...) is setuid or setgid
Разработчики Ruby, использующие Phusion Passenger Standalone, будут видеть это сообщение в своей консоли каждые пять секунд. Это очень раздражает, очень быстро.
Я подал ошибку в Apple. Это также в OpenRadar.
Между тем, существует также третий способ решения проблемы пути к клиентской библиотеке, который не требует установки DYLD_LIBRARY_PATH (обходной проблемы 10.8) или взлома файлов .bundle с помощью install_name_tool:
$ brew install mysql