533 votes

Erreur lors de l'installation mysql2: impossible de construire gem extension native

Je vais avoir des problèmes en essayant d'installer mysql2 gem pour les Rails. Lorsque j'essaie de l'installer en exécutant bundle install ou gem install mysql2 il me donne l'erreur suivante:

Erreur lors de l'installation mysql2: ERREUR: Échec de création d'gem extension native.

Comment puis-je résoudre ce problème et réussi à installer mysql2?

979voto

spacemonkey Points 7603

Sur Ubuntu/Debian et d'autres distributions à l'aide d'aptitude:

sudo apt-get install libmysql-ruby libmysqlclient-dev

Si la commande ci-dessus ne fonctionne pas, car libmysql-ruby ne peut pas être trouvé, les opérations suivantes doivent être suffisantes:

sudo apt-get install libmysqlclient-dev

Sur Red Hat/CentOS et d'autres distributions à l'aide de yum:

sudo yum install mysql-devel

Sur Mac OS X avec Homebrew:

brew install mysql

67voto

Kelsin Points 583

Je suis sur un mac et d'utiliser homebrew installer des programmes open source. J'ai fait installer mac outils de Dev pour installer homebrew, mais après que c'était un simple:

brew install mysql

pour installer mysql. Je n'ai pas eu mysql est un joyau de problème depuis.

42voto

Francois Points 2397

voici une solution pour les utilisateurs de windows, j'espère que ça aide!

L'utilisation de MySQL avec Rails 3 sur Windows

  • Installer railsinstaller -> www.railsinstaller.org (je l'ai installé à c:\Rails)

  • Installer MySQL (j'ai utilisé MySQL 5.5) -> dev.mysql.com/downloads/installer/

--- pour l'installation de mySQL ---

Si vous n'avez pas déjà avoir ces deux fichiers installés, vous pourriez avoir besoin pour obtenir votre MySQL va

vcredist_x86.exe -> http://www.microsoft.com/download/en/details.aspx?id=5555 dotNetFx40_Full_x86_x64.exe -> http://www.microsoft.com/download/en/details.aspx?id=17718

L'utilisation d'installation par défaut L'Ordinateur Du Développeur

-MySQL Server Config-
port: 3306
nom du service windows: MySQL55
mysql root pass: racine (vous pouvez le changer plus tard)
(nom d'utilisateur: root)
-MySQL Server Config-

--- pour l'installation de mySQL ---


--- Installer le mysql2 Gem ---

Important: le Faire avec Git en Ligne de Commande Bash(ce qui a été installé avec railsinstaller) -> start/Git Bash

gem install mysql2 -- '--with-mysql-lib="c:\Program Files\MySQL\MySQL Server 5.5\lib" --with-mysql-inclure="c:\Program Files\MySQL\MySQL Server 5.5\include"'

Maintenant, le gem doit avoir installé correctement

Enfin copier le libmysql.dll fichier de
C:\Program Files\MySQL\MySQL Server 5.5\lib
pour
C:\Rails\Ruby1.9.2\bin

--- Installer le mysql2 Gem ---


Vous allez maintenant être en mesure d'utiliser votre application Rails avec MySQL, si vous n'êtes pas sûr de savoir comment créer un Rails de 3 app avec MySQL à lire...


--- Obtenir un Rails de 3 app va avec MySQL ---

Ouvrez l'invite de commande(pas Git Bash) -> start/cmd
Accédez à votre dossier (c:\Sites)
Créer de nouvelles application rails

rails new world

Supprimer le fichier c:\Sites\world\public\index.html
Modifier le fichier c:\Sites\world\config\routes.rb
ajoutez cette ligne -> racine : = > 'villes#index"

Ouvrez l'invite de commande (générer des vues et des contrôleurs)

rails generate scaffold city ID:integer Name:string CountryCode:string District:string Population:integer



Modifier le fichier c:\Sites\world\app\models\city.rb pour ressembler à ceci

class City < ActiveRecord::Base
 set_table_name "city"
end

Modifier le fichier c:\Sites\world\config\database.yml pour ressembler à ceci

development:
adapter: mysql2
encoding: utf8
database: world
pool: 5
username: root
password: root
socket: /tmp/mysql.sock

ajouter au gemfile

gem 'mysql2'

Ouvrez l'invite de commande windows cmd, et non pas Git Bash(exécuter votre application!)
Accédez à votre dossier app (c:\Sites\world)

rails s

Ouvrez votre navigateur ici -> http://localhost:3000

--- Obtenir un Rails de 3 app va avec MySQL ---

19voto

OfficeYA Points 204

J'ai plusieurs ordinateurs, 32 et 64 bits processeur, ils s'exécutent sur Ubuntu Linux, Maverick (10.10) communiqué de presse.

J'ai eu le même problème, et pour moi, le sudo apt-get install libmysql-ruby libmysqlclient-dev fait la job!!!

7voto

Lumbee Points 1216

Si vous utilisez yum essayer:

sudo yum install mysql-devel

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