125 votes

rails + MySQL sur OSX: la bibliothèque n'est pas chargée: libmysqlclient.18.dylib

Je viens juste de commencer avec Ruby (et rails). J'ai fait l'installation en fonction de http://ruby.railstutorial.org/ruby-on-rails-tutorial-book#sec:ruby gemmes, à l'aide de rvm. J'ai tout qui fonctionne bien avec sqlite.

Maintenant, j'aimerais essayer de faire la conversion de choses à MySQL, puisque c'est ce que je fais la plupart de mon développement. Dans mon Gemfile j'ai remplacé sqlite avec mysql2:

group :development, :test do
#  gem 'sqlite3', '1.3.5'
  gem 'mysql2'
  gem 'rspec-rails', '2.9.0'
end

Mais lorsque j'essaie de créer la DB pour les rails dans MySQL j'obtiens:

$ rake db:create --trace
rake aborted!
dlopen(/Users/username/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.18.dylib
  Referenced from: /Users/username/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle
  Reason: image not found - /Users/username/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundle

J'ai vu d'autres offres de recommander la ré-installation de MySQL via homebrew (le mien a été installée via téléchargement DMG), mais je préfèrerais ne pas le faire car j'ai plusieurs autres bases de données qui existe déjà pour les autres non-ruby projets.

Je ne en réalité, le fichier que Rails est à la recherche d'; il est installé dans /usr/local/mysql/lib/libmysqlclient.18.dylib. Quelle est la meilleure façon de dire les Rails de la façon de le localiser?

318voto

Alex Points 1897

La solution est assez facile ; Ajouter le chemin d’accès de la bibliothèque dans votre fichier ~/.bash_profile ou ~/.profile :

Si ça ne marche toujours pas (ce travail pour moi) :

Il existe de nombreux blogs avec `` , qui ne fonctionne pas pour moi parce que je suis sur OS x Lion :

26voto

Joseph Points 199
<pre><code></code><p>Cela a fonctionné pour moi. J’ai installé MySQL à partir d’un fichier dmg.</p></pre>

16voto

gregbenner Points 312
<pre><code></code><p>A fonctionné pour moi. Tous les autres semblables n’a pas.</p></pre>

6voto

Abhishek Pande Points 53

Pour MySql 5.6 installé de DMG sur Mavericks

4voto

ingconti Points 405

Je confirme le patch de Abhishek fonctionne-t-il .

Il fonctionne pour Yosemite, trop.

Remarque : au lieu de lier une version particulière de mysql, utilisez le lien symbolique, mysql construit déjà fait :

Cette solution fonctionne pour Xcode et API C.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X