51 votes

Difficultés à installer mysql gem sur Ubuntu

J'essaye d'installer le mysql 2.8.1 gem. Je l'utiliserais pour créer une application Rails 2.0.2 sur Ubuntu 10.04. J'utiliserais Ruby 1.8.7. J'ai installé les dépendances de développement (autres gemmes). Pour certaines raisons, je ne parviens pas à l'installer. Je ne suis pas capable de comprendre exactement comment le réparer. S'il vous plaît aider!

Je reçois le message suivant dans le terminal lorsque je tente de l'installer:

 mohnish@pc146724-desktop:~/Downloads$ sudo gem install mysql-2.8.1.gem 
Building native extensions.  This could take a while...
ERROR:  Error installing mysql-2.8.1.gem:
    ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lm... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lz... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lsocket... no
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lnsl... yes
checking for mysql_query() in -lmysqlclient... no
checking for main() in -lmygcc... no
checking for mysql_query() in -lmysqlclient... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/usr/bin/ruby1.8
    --with-mysql-config
    --without-mysql-config
    --with-mysql-dir
    --without-mysql-dir
    --with-mysql-include
    --without-mysql-include=${mysql-dir}/include
    --with-mysql-lib
    --without-mysql-lib=${mysql-dir}/lib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-mlib
    --without-mlib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-zlib
    --without-zlib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-socketlib
    --without-socketlib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-nsllib
    --without-nsllib
    --with-mysqlclientlib
    --without-mysqlclientlib
    --with-mygcclib
    --without-mygcclib
    --with-mysqlclientlib
    --without-mysqlclientlib


Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
mohnish@pc146724-desktop:~/Downloads$ 
 

Merci de votre aide!!

129voto

Zabba Points 26372

Essayez ceci et installez ensuite la gem mysql:

 sudo apt-get install libmysqlclient-dev libmysqlclient16 ruby-dev
 

9voto

Andrew Plummer Points 412

Essayez ceci et installez ensuite la gem mysql:

sudo apt-get installez libmysqlclient-dev libmysqlclient16

Cela a fonctionné après avoir exécuté sudo gem installer mysql.

La documentation ne s’installe toujours pas correctement (tas d’erreurs "Aucune définition", bien que ce ne soit pas vraiment un gros problème.

2voto

Vous devez faire ce que le message d'erreur vous indique: vérifiez le mkmf.journal! La recherche de ce fichier à l'aide de la fonction rechercher /usr/lib/ruby/gems/1.8/gems/ nom-de-mkmf.journal. Généralement, ce message d'erreur s'affiche parce que vous avez oublié d'installer le paquet-dev pour l'extension que vous essayez d'installer. Donc, si vous voulez installer la gem mysql, vous avez probablement oublié d'installer le libmysqlclient14-dev premier. Faire un apt-cache search | grep dev pour trouver les paquets appropriés.

plz vérifier ce pour plus d'informations

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