Question Créer un lien symbolique pour la bibliothèque libmysqlclient.18.dylib


J'ai installé mysql via un programme d'installation pkg. J'essaie de démarrer le serveur rails et j'obtiens l'erreur suivante.

Library not loaded: libmysqlclient.18.dylib (LoadError)

Je lis que la solution à cela est de créer un lien symbolique comme

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

Il n'y a pas

/usr/local/mysql/lib/libmysqlclient.18.dylib 

fichier seulement un

/usr/local/mysql/lib/libmysqlclient.20.dylib fichier.

je cours

sudo find /usr/ -name libmysqlclient.18.dylib

et je ne trouve pas le fichier libmysqlclient.18.dylib.


13
2017-11-11 17:10


origine


Réponses:


J'ai rencontré un problème comme celui-ci lors de la mise en place d'un nouvel environnement de développement. J'avais installé MySQL via homebrew, ce qui m'a donné la version 5.7.9 de MySQL, avec la version de la bibliothèque libmysqlclient.20.dylib.

Dans mon cas, je mettais en place un projet python. L'installation des exigences a échoué car le composant de connexion python-MySQL recherchait libmysqlclient.18.dylib, qui était introuvable sur ma machine.

La mise à niveau vers MySQL 5.6 a résolu le problème pour moi:

brew uninstall mysql
brew tap caskroom/versions
brew install mysql56

À présent /usr/local/lib/libmysqlclient.18.dylib est présent et tout est peachy.


15
2017-11-17 13:50



le mysql2 gem qui est le plus probable dans votre environnement Rails cherche toujours libmysqlclient.18.dylib (de ce qui devait être une précédente installation de mysql) mais la bibliothèque n’est plus là car la récente installation / mise à jour manuelle l’a remplacé par libmysqlclient.20.dylib.

La solution facile consiste à réinstaller mysql2:

gem uninstall mysql2 && gem install mysql2

ou mieux encore:

gem uninstall mysql2 && bundle, si vous êtes sur Bundler.


8
2018-01-12 06:48



Je n'ai pas installé mysql via brew ou gem et je me suis retrouvé avec le même problème que celui recherché libmysqlclient.18.dylib au lieu de libmysqlclient.20.dylib. J'ai essayé tout ce qui est mentionné ici et sur d'autres fils. Rien n'a fonctionné. Finalement, cela a fonctionné pour moi:

 pip install mysqlclient

Il n'installe pas libmysqlclient.18.dylib, mais résout le library not installed et image not found les erreurs.

J'espère que ça aide quelqu'un!


3
2017-07-20 05:42