Installer MySQL Ruby Gem

9

Salut, j'essaie en vain d'installer MySQL Gem sur Ubuntu 10.04.

J'ai essayé les commandes suivantes:

sudo gem install mysql
sudo gem install mysql -- --with-mysql-config=/usr/bin/mysql_config

J'obtiens le message suivant pour chacun:

Building native extensions.  This could take a while...
ERROR:  Error installing mysql:
    ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb
checking for mysql_ssl_set()... no
checking for rb_str_set_len()... no
checking for rb_thread_start_timer()... no
checking for mysql.h... no
checking for mysql/mysql.h... 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


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

J'ai lu sur de nombreux forums que l'installation des bibliothèques clientes MySQL (libmysqlclient-dev) aide à résoudre le problème ci-dessus, mais c'est le cas pour moi.

apt-get install libmysqlclient15-dev

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting libmysqlclient-dev instead of libmysqlclient15-dev
libmysqlclient-dev is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Toute aide sur ce qui pourrait être le problème serait grandement appréciée.

Merci, Sharmil

sharmil
la source

Réponses:

13

Vous avez juste besoin d'installer libmysqlclient-dev

sudo apt-get install libmysqlclient-dev
SpamapS
la source
6

Est-ce que

sudo apt-get install libmysql-ruby

récupérer la gemme requise?

indi
la source
+1, il est préférable d'utiliser une bibliothèque ruby ​​du référentiel si disponible. Utilisez des gemmes lorsque la bibliothèque n'est pas empaquetée dans le référentiel ou si vous avez besoin d'une version spécifique uniquement disponible en tant que gemme.
dv3500ea