Erreur d’installation de sqlite3-ruby sur Ubuntu

J’ai l’erreur suivante lors de l’installation de sqlite3ruby:

 Construire des extensions natives.  Ça pourrait prendre un moment...
 ERREUR: Erreur lors de l'installation de sqlite3-ruby:
     ERREUR: Impossible de construire l'extension native gem.

 /usr/bin/ruby1.8 extconf.rb
 vérification de sqlite3.h ... non
 sqlite3.h est manquant.  Essayez 'port install sqlite3 + universal' ou 'yum install sqlite3-devel'
 *** extconf.rb a échoué ***
 Impossible de créer Makefile pour une raison quelconque, probablement sans
 bibliothèques et / ou en-têtes nécessaires.  Vérifiez le fichier mkmf.log pour plus d'informations
 détails.  Vous pouvez avoir besoin d'options de configuration.

 Options de configuration fournies:
     --with-opt-dir
     --sans-opt-dir
     --avec-opt-include
     --avec-opt-include = $ {opt-dir} / include
     --with-opt-lib
     --avec-opt-lib = $ {opt-dir} / lib
     --with-make-prog
     --avec-pas-prog
     --srcdir =.
     --curdir
     --ruby = / usr / bin / ruby1.8
     --avec-sqlite3-dir
     --avec-sqlite3-dir
     --with-sqlite3-include
     --without-sqlite3-include = $ {sqlite3-dir} / include
     --with-sqlite3-lib
     --without-sqlite3-lib = $ {sqlite3-dir} / lib


 Les fichiers Gem restront installés dans /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1 pour inspection.
 Résultats consignés dans /usr/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.3.1/ext/sqlite3/gem_make.out

sqlite3.h est situé dans / usr / include /

 sudo gem installe sqlite3-ruby --without-sqlite3-include = / usr / include

ne fonctionne pas


 ERREUR: lors de l'exécution de gem ... (OptionParser :: InvalidOption)
     Option invalide: --without-sqlite3-include = / usr / include

Ubuntu 10.04

Vous devez comstackr les en-têtes de développement SQLite3 pour l’extension native de la gemme. Vous pouvez les installer en cours d’exécution (éventuellement avec sudo ):

 apt-get install libsqlite3-dev 

Vous avez juste besoin d’un -- là-dedans.

 sudo gem install sqlite3-ruby -- --with-sqlite3-include=/usr/include 

Cela spécifie que l’option n’est pas de gemmer directement, mais la gemme spécifique.

Dans mon cas, je n’ai pas de compilateurs de base installés, donc

 sudo apt-get install build-essential 

résolu mon problème, mais pour la plupart des gens, je pense que https://stackoverflow.com/a/3649005/417267 est la solution.

Si vous utilisez ubuntu et que vous utilisez RVM pour ruby ​​on rails, veuillez append FIRST:

 sudo apt-get install libxslt-dev libxml2-dev 

OU Vous pouvez vérifier avec ces commandes:

Cette commande préparera pour vous deux paquets: sqllite3 et libsqlite3-dev

sudo apt-get installer sqlite3 libsqlite3-dev

-Maintenant, installez gem sqlite

  [sudo] gem install sqlite3-ruby 

utiliser Ubuntu n’a pas besoin de sudo.

Bonne chance! Note: J’utilise Ubuntu 10.10 et ça marche.

C’est ce que j’ai fait:

 wget http://www.sqlite.org/sqlite-amalgamation-3.7.2.tar.gz tar xzf sqlite-amalgamation-3.7.2.tar.gz cd sqlite-3.7.2/ ./configure make make install gem install rails sqlite3-ruby 

de: http://cuasan.wordpress.com/2010/10/13/rails-3-on-debian-with-sqlite-3/

C’était tout simplement suffisant pour que ça marche

 sudo apt-get install libsqlite3-dev 

Merci à marshluca

Essayé toutes les autres solutions, aucune n’a aidé.

Il s’est avéré que vous avez également besoin d’un package de développement pour Ruby lui-même. Pour moi, ça m’a aidé

 sudo apt-get install ruby-full 

Il a beaucoup de dépendances désagréables cependant (comme emacs, wtf?), Juste

 sudo apt-get install ruby1.8-dev 

devrait être bon. Après son installation (et vous avez les paquets sqlite et sqlite-dev installés)

 sudo gem install sqlite3-ruby 

fonctionne comme un charme.

Voici une meilleure réponse de HEROKU – ne peut pas exécuter git push heroku master

Comme vous ne pouvez pas utiliser sqlite3 sur heroku, ajoutez ceci à votre Gemfile:

 group :production do gem 'pg' end group :development, :test do gem 'sqlite3' end 

Avait ce même problème et les suivants ont fonctionné pour moi:

comstackz sqlite3 en tant que bibliothèque statique, installez-le quelque part dans votre répertoire personnel, puis fournissez cette option pour le processus d’installation de gem.

Allez sur la page de téléchargement et prenez la source. La version la plus récente est http://www.sqlite.org/sqlite-autoconf-3070400.tar.gz

tar -xf sur le fichier ou faites ce que vous faites normalement pour décompresser; entrer dans l’annuaire

./configure –disable-shared –enable-static –prefix = / some / path / dans / mon / home

comstackr, installer et quand vous installez le bijou …

gem installe sqlite3-ruby – –with-sqlite3-dir = / some / path / dans / mon / home

De sqlite3-ruby gem ne peut pas trouver sqlite3.h sur Ubuntu :

Vous devez également installer gcc lui-même, ce qui signifie que:

 sudo apt-get install gcc libsqlite3-dev ruby1.8-dev sudo gem install sqlite3 

Apparemment, vous obtenez une erreur erronée pointant vers un fichier sqlite3.h manquant lorsque le problème lui-même manque à gcc.

La solution consiste à append -- séparer configure parameters de configure parameters de gem .

au lieu de

 sudo gem install sqlite3-ruby --without-sqlite3-include=/usr/include 

Essayez ceci, sur une seule ligne, assurez-vous d’inclure -- après le dernier paramètre gem et avant de configure parameters:

 sudo gem install sqlite3 -- --with-sqlite3-lib=/somewhere/local/lib --with-sqlite3-include=/somewhere/local/include 

Cela devrait vous permettre de contourner cette erreur:

 ERROR: While executing gem ... (OptionParser::InvalidOption) invalid option: --without-sqlite3-include=/usr/include 

Pas --without-sqlite3-include=/usr/include , mais --with-sqlite3-include=/usr/include .

C’est exactement le même problème qu’il ya quelques semaines. J’ai découvert que je devais télécharger les en-têtes / bibliothèques les plus récents de la page de téléchargement SQLite. Essayez-le, j’espère que cela vous aidera!

Pour moi, le problème a été résolu en obtenant mkmf, qui se trouve dans ruby1.8-dev.

 sudo apt-get install ruby1.8-dev 

Merci à mentalized pour celui-là.

Je suis d’accord avec Danya Vershinin & EnotionZ .

Si ne peut pas utiliser apt-get:

  1. comstackz et installez sqlite3 à partir de sources en spécifiant votre propre chemin “préfixe”. Plus d’informations peuvent être trouvées dans le README.
  2. Puis transmettez ce chemin au programme d’installation de sqlite3-ruby (n’oubliez pas le “-“).

Vous avez cassé la version de RVM. Ubuntu fait quelque chose à RVM qui produit beaucoup d’erreurs, le seul moyen sûr de corriger pour l’instant est de: sudo apt-get –purge supprimer ruby-rvm sudo rm -rf / usr / share / ruby ​​…, si cela n’aide pas puis redémarrez votre ordinateur. installez RVM: \ curl -L https://get.rvm.io | bash -s stable –ruby –autolibs = enable –auto-dotfiles Si vous trouvez que vous avez besoin de quelques manipulations, jetez un oeil à Installation de Ruby sur Ubuntu 12.04, ce qui donne un peu plus d’explication

Oublie tout et fais ça,

courir

 yum install ruby-devel sqlite sqlite-devel ruby-rdoc yum install make gcc gem install sqlite3-ruby bundle install 

C’est pour rhel, courez la même chose pour ubuntu.

Aucune des solutions mentionnées ci-dessus n’a fonctionné pour moi, même après l’installation de ruby2.5-dev et libsqlite3-dev . Puis essayé d’utiliser PostgreSql au lieu de sqlite . Cela a bien fonctionné. Pour utiliser PostgreSql au lieu de sqlite, utilisez cette commande lors de la création d’un projet de rails .

 rails [_VERSION_] new project_name -d postgresql 

Si vous voulez utiliser MySql utilisez mysql au lieu de postgresql .

 rails [_VERSION_] new project_name -d mysql 

Sinon, vous pouvez essayer sans sqlite .

 bundle install --without sqlite