web-dev-qa-db-fra.com

Comment installer une gemme therubyracer sur 10.10 Yosemite?

Je n'arrive pas à installer la gemme therubyracer sur Yosemite 10.10.

Voici le journal:

 11:53 $ gem installer libv8 -v '3.16.14.3' - --with-system-v8 


 Construire des extensions natives avec: '--with-system-v8'
 Cela pourrait prendre un certain temps ..
 Libv8-3.16.14.3 .__ installé avec succès. Analyse de la documentation pour libv8-3.16.14.3 
 Installation de la documentation de ri pour libv8-3.16.14.3 
 Terminé la documentation d'installation pour libv8 après 0 secondes 
 1 gem installé 


 02:05 $ gem installer therubyracer -v '0.12.1' - --with-system-v8 

.__ Construire des extensions natives avec: '--with-system-v8' 
 Cela pourrait prendre un certain temps ...
 ERREUR: erreur lors de l'installation de therubyracer: 
 ERREUR: Echec de la création de l'extension native gem .

 /usr/local/var/rbenv/versions/2.1.2/bin/Ruby extconf.rb --with-system-v8 
 vérification de main () dans -lpthread ... oui 
 vérification de main ( ) in -lobjc ... oui 
 recherche de v8.h ... non 
 *** extconf.rb a échoué *** 
 Impossible de créer le Makefile pour une raison quelconque, probablement le manque de ressources
 bibliothèques et/ou en-têtes. Consultez le fichier mkmf.log pour plus de détails. Vous pouvez avoir besoin d’options de configuration .

 Options de configuration fournies: 
 --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/local/var/rbenv/versions/2.1.2/bin/Ruby 
 --with-pthreadlib 
 --without-pthreadlib 
 --with-objclib 
 --without-objclib 
 --enable-debug 
 --disable-debug 
 --with-v8-dir 
 --without-v8-dir 
 --with-v8-include 
 --without-v8-include = $ {v8-dir}/include 
 --with-v8-lib 
 --without-v8-lib = $ {rép_V8}/lib 
/usr/local/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/gems/libv8-3.16. 14.3/ext/libv8/location.rb: 50: dans `configure ': vous avez choisi d’utiliser la version de V8 disponible sur votre système (Libv8 :: Location :: System :: NotFoundError) 
 Et * pas * le celui qui est fourni avec libv8 rubygem. Cependant, 
 Il n'a pas pu être localisé. assurez-vous d'avoir une version de 
 v8 compatible avec 3.16.14.3 installée. Vous aurez peut-être besoin d'options spéciales --with-v8-dir s'il se trouve dans un emplacement non standard 
__.
 Merci., 
 Le Mgmt 

 from /usr/local/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/gems/libv8-3.16.14.3/lib/libv8.rb:7:dans «configure_makefile» 
 from extconf.rb: 32: dans '' 

 extconf a échoué, le code de sortie 1 

 Les fichiers Gem restent installés dans /usr/local/var/rbenv/versions/2.1.2/lib /Ruby/gems/2.1.0/gems/therubyracer-0.12.1 pour inspection .
 Résultats consignés dans /usr/local/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/ extensions/x86_64-darwin-14/2.1.0-static/therubyracer-0.12.1/gem_make.out 
87
Nicolas Blanco
git clone https://github.com/cowboyd/libv8.git
cd libv8
bundle install
bundle exec rake clean build binary
gem install pkg/libv8-3.16.14.3-x86_64-darwin-12.gem #note that libv8 version may change, so tab through files in pkg/, also remember to use the one with version specified

puis juste grouper vos gemmes de projet

c'est la seule façon dont cela a fonctionné pour moi le 10.10 (Ruby 2.1.2)

68
mmln
gem uninstall libv8
brew install v8
gem install therubyracer
gem install libv8 -v '3.16.14.3' -- --with-system-v8

c'est la seule façon dont cela a fonctionné pour moi le 10.10 (Ruby 2.1.2)

Ou essayez gem install libv8 -v 'XX.XX.XX' -- --with-system-v8 en ajoutant la version du joyau :) 

240
Wylkon

Aucune des réponses ne fonctionne pour moi cette fois. J'ai aussi utiliser ceci:

brew tap homebrew/versions
brew install v8-315

gem install libv8 -v '3.16.14.13' -- --with-system-v8
gem install therubyracer -- --with-v8-dir=/usr/local/opt/v8-315

bundle install

Vu sur les problèmes rubyracer Github.

J'espère que ça aide quelqu'un d'autre.

37
coding addicted

Cela sera peut-être utile pour quelqu'un mais j'avais des problèmes pour installer therubyracer (à cause des problèmes avec libv8) la solution consistait à uninstall tout le libv8 que j'avais installé. Installer le therubyracer 

$ gem uninstall libv8
$ gem install therubyracer -v '0.12.0'
Fetching: libv8-3.16.14.7-x86_64-darwin-14.gem ( 57%)
Fetching: libv8-3.16.14.7-x86_64-darwin-14.gem (100%)
Successfully installed libv8-3.16.14.7-x86_64-darwin-14
Building native extensions.  This could take a while...
Successfully installed therubyracer-0.12.0
2 gems installed

J'espère que ça aidera quelqu'un. 

24
Jakub Troszok

Il semble que cela ait été corrigé en amont. Ce qui a fonctionné pour moi et @aurels et @ Mike Causer et @Juanda était:

bundle update libv8
12
M.G.Palmer

Cela a très bien fonctionné pour moi sur mon Yosemite et Ruby 2.1.5 (Ruby via RVM)

gem install libv8 -v '3.16.14.3' -- --with-system-v8

Auparavant, il me donnait l'erreur Gem::Ext::BuildError: ERROR: Failed to build gem native extension. pour la version 3.16.14.3 de gem libv8

7
Rohan Daxini

J'ai pu continuer avec Ruby Racer après rm Gemfile.lock

auparavant: J'ai installé v8 via brew install v8, puis gem install libv8 -v '3.16.14.3' -- --with-system-v8

et je cours 10.10 Yosemite

6
CloudMagick

Seulement cela fonctionne pour moi dans mon Yosemite, Ruby 2.1.2:

gem install libv8 -v '3.16.14.3' -- --with-system-v8
brew link --overwrite v8-315 --force
gem install therubyracer -v '0.12.2' -- --with-system-v8
5
aquajach

Ils ont corrigé ce problème dans la version la plus récente de libv8. Voir: https://github.com/cowboyd/libv8/issues/123

Vous devez installer depuis le dépôt github, dans Rails, j'ai ajouté une ligne à mon fichier gem comme ceci: gem "libv8", git: "git://github.com/cowboyd/libv8.git", submodules: true

MODIFIER:

Cela ne résout apparemment qu'une partie du problème. J'ai installé la nouvelle version de libv8, mais maintenant le rubyracer est toujours à la recherche de l'autre, je pense? Toujours en train de regarder.

4
Borromakot

J'ai eu le même problème sur Yosemite. Ma solution est similaire à ce qui apparaît ci-dessus.

Utilisez gem uninstall libv8 pour supprimer tout ce qui pourrait être installé. 

Laissez therubyracer dans votre Gemfile, mais supprimez toute référence explicite à libv8. 

Exécutez bundle install

libv8 a ensuite été installé correctement en tant que dépendance. 

3
Martin Streicher

Réponse mise à jour pour 2018. 

Je suis sur High Sierra, sur Homebrew 1.6.1

brew install v8-315

gem install libv8 -v '3.16.14.13' -- --with-system-v8
gem install therubyracer -- --with-v8-dir=/usr/local/opt/[email protected]/

Est ce qui a fonctionné pour moi.

Le mérite revient à @ coding-addicted pour son réponse originale .

2
alexggordon

Après des heures d’essayer simplement d’améliorer Ruby, cela a fonctionné:

brew install Ruby 

puis en ajoutant ce qui suit au fichier gem: 

gem 'libv8'  
gem 'therubyracer' 
1
ashwin tang

cela se produit également à cause de conflits avec libv8, bien que vous puissiez simplement assigner une version au rubyracer et celui-ci sera installé:

changez ce qui suit dans le fichier gem:

gemme 'therubyracer', '~> 0.12.1'

et ne pas installer groupé

0
abcd_win

Cette solution a fonctionné pour moi en suivant la solution ci-dessus de Jakub Troszok avec juste un changement mineur 

gem uninstall libv8
gem install therubyracer -v '0.12.1'
    Fetching: libv8-3.16.14.19-x86_64-darwin-18.gem (100%)
    Successfully installed libv8-3.16.14.19-x86_64-darwin-18
    Building native extensions.  This could take a while...
    Successfully installed therubyracer-0.12.1
    Parsing documentation for libv8-3.16.14.19-x86_64-darwin-18
    Installing ri documentation for libv8-3.16.14.19-x86_64-darwin-18
    Parsing documentation for therubyracer-0.12.1
    Installing ri documentation for therubyracer-0.12.1
    Done installing documentation for libv8, therubyracer after 0 seconds
    2 gems installed
gem install libv8 -v '3.16.14.17' -- --with-system-v8  (if the libv8 version required for your project is different from the one installed by rubyracer)
bundle install
0
dchhatani

J'ai fait ce qui suit

gem install therubyracer

qui installe maintenant therubyracer 0.12.1 qui installe la dépendance libv8 (3.16.14.7 x86_64-darwin-14) qui s’est installée sans erreur.

Je l'ai fait en utilisant Ruby 2.1.5 que j'ai installé via: 

CC=/usr/bin/gcc rbenv install 2.1.5

ce que j'ai fait après avoir exécuté brew upgrade Ruby-builds.

Après avoir installé Ruby 2.1.5, j'ai aussi lancé 

gem upgrade --system

pour obtenir rubygems-update 2.4.5

0
Chris Beck

Un coup d'œil à quiconque aurait pu avoir mon problème: j'ai fini par désinstaller ma version de Ruby dans RVM puis par la réinstaller. Cela semblait utiliser les dépendances correctes dans la dernière version des outils xcode pour compiler Ruby.

rvm list
rvm uninstall Ruby-x.x.x
rvm install Ruby-x.x.x
0
colsen

Ce qui a fonctionné pour moi, basé sur le commentaire suivant, 

https://github.com/cowboyd/therubyracer/issues/304#issuecomment-62046085

était de supprimer Gemfile.lock puis d'exécuter l'installation de bundle

0
tufla