3 回答
TA贡献1995条经验 获得超2个赞
解决方案非常简单;将库路径添加到〜/ .bash_profile或〜/ .profile文件中:
MYSQL=/usr/local/mysql/bin
export PATH=$PATH:$MYSQL
export DYLD_LIBRARY_PATH=/usr/local/mysql/lib:$DYLD_LIBRARY_PATH
如果仍然无法正常工作(对我来说这样):
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
有很多带有的博客install_name_tool,它们对我不起作用,因为我在OSX Lion上:
sudo install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/bin/indexer
sudo install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/bin/search
TA贡献1862条经验 获得超6个赞
在El Capitan,我得到了 ln: /usr/lib/libmysqlclient.18.dylib: Operation not permitted
在El Capitan中,/usr/lib/现在有一个受限制的标志,并且在不禁用安全性的情况下无法写入,因此我只是添加了链接/usr/local/lib。
sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/local/lib/libmysqlclient.18.dylib
Rails服务器再次正常运行。
TA贡献1876条经验 获得超6个赞
尽管此问题的标题恰好描述了我遇到的问题,但情况与前面的答案中描述的情况有所不同,解决方案也是如此。
在我的情况下(El Capitan,通过brew update && brew upgrade自家安装的mysql ),导致mysql软件包升级到5.7.10(从5.6.x)。
升级导致libmysqlclient.18.dylib被替换为libmysqlclient.20.dylib,但是mysql2gem仍然依赖于前者。
要解决此问题,我做了: gem uninstall mysql2 && gem install mysql2
添加回答
举报