web-dev-qa-db-fra.com

Comment faire en sorte que Ruby/Homebrew/RVM fonctionne sur Yosemite?

Après l’installation de Yosemite, je n’étais plus capable de lancer Brew ou Ruby. 

Je recevais cette erreur sur la mise à jour de la bière:

/usr/local/bin/brew: /usr/local/Library/brew.rb: /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby: bad interpreter: No such file or directory
/usr/local/bin/brew: line 23: /usr/local/Library/brew.rb: Undefined error: 0

obtenir cette erreur sur irb:

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:245:in mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-14 (Errno::EACCES) from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:245:infu_mkdir'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:219:in block (2 levels) in mkdir_p' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:217:inreverse_each'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:217:in block in mkdir_p' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:203:ineach'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/fileutils.rb:203:in mkdir_p' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:210:inwrite_gem_make_out'
from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:132:in build_error' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:171:inrescue in build_extension'
from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:156:in build_extension' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:198:inblock in build_extensions'
from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:195:in each' from /Library/Ruby/Site/2.0.0/rubygems/ext/builder.rb:195:inbuild_extensions'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1436:in block in build_extensions' from /Library/Ruby/Site/2.0.0/rubygems/user_interaction.rb:45:inuse_ui'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:1434:in build_extensions' from /Library/Ruby/Site/2.0.0/rubygems/stub_specification.rb:60:inbuild_extensions'
from /Library/Ruby/Site/2.0.0/rubygems/basic_specification.rb:56:in contains_requirable_file?' from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:925:inblock in find_inactive_by_path'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:924:in each' from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:924:infind'
from /Library/Ruby/Site/2.0.0/rubygems/specification.rb:924:in find_inactive_by_path' from /Library/Ruby/Site/2.0.0/rubygems.rb:185:intry_activate'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:150:in block in search_file' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:158:inblock in each_localized_path'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:167:in each_sublocale' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:157:ineach_localized_path'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:145:in search_file' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:124:infind'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:108:in load' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/locale.rb:32:ininitialize'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/init.rb:114:in new' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/init.rb:114:ininit_config'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb/init.rb:16:in setup' from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/Ruby/2.0.0/irb.rb:380:instart'
from /usr/bin/irb:12:in `'
118
eden

Cette erreur peut facilement être corrigée aux étapes suivantes:

1) Terminal ouvert

2) Tapez nano /usr/local/Library/brew.rb

3) Dans la première ligne, remplacer «1.8» par «Actuel», il devrait donc ressembler à ceci:

#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/Ruby -W0

via http://blog.ic3man.gr/2014/06/homebrew-Ruby-bad-interpreter-no-such-file-or-directory/

281
raz0r

Je me suis informé sur Yosemite et j'ai découvert plus tard que brew était cassé.

/usr/local/bin/brew: /usr/local/Library/brew.rb: 
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby: bad interpreter: No such file or directory /usr/local/bin/brew: line 23: /usr/local/Library/brew.rb: Undefined error: 0

Si vous n'avez pas encore apporté de modifications à brasser, voici ce que je recommande. Sinon, lisez plus bas.

  1. cd /System/Library/Frameworks/Ruby.framework/Versions/
  2. Sudo ln -s Current 1.8
  3. brew update 
  4. Sudo unlink 1.8

Déjà apporté des modifications aux fichiers de brassage et coincé dans un désordre git?

J'ai essayé de modifier /usr/local/Library/brew.rb mais la modification locale de mon dépôt Git empêchait brew update de mettre à jour les mises à jour. J'ai essayé d'autres solutions mentionnées sur cette page et sur d'autres sites et je me suis retrouvé avec un gâchis idiot et tout ce que je voulais faire était de défaire tout ce que j'avais fait pour brasser.

J'ai engagé mon changement mais ça a empiré les choses. Finalement, j'ai dû annuler mes commits et git reset --hard HEAD~1 jusqu'à ce que je sois au bon commit. J'avais aussi un fouillis de fichiers non versionnés (j'ai modifié les autorisations d'accès aux fichiers dans/usr/Local), alors j'ai créé un git clean -f -d qui a supprimé tous les fichiers et répertoires non versionnés et m'a ramené à mon point de départ avant d'apporter des modifications.

39
Jason R

Étapes pour y remédier:

  1. Installer des outils de ligne de commande pour Xcode 6

  2. Réinstallez le brassin:

    Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
  3. Une fois le brassage installé, rvm fonctionnera:

    rvm install Ruby
    

Travaillé pour moi, yahoo!

37
eden

Editer le script signifie que brew update ne fonctionnera pas; des modifications locales apportées aux fichiers suivis entraînent l'échec de git pull.

J'ai fait ceci, qui je suppose est plus propre:

cd /usr/local/Library
git pull -q Origin refs/heads/master:refs/remotes/Origin/master

Il n'y a aucune plainte de brew doctor.

33
Otto

Comme celui mentionné précédemment: 1) Passer à la version actuelle 2) installer xcode 6

Si vous avez maintenant d'autres problèmes avec Brew et Ruby, cela devrait aider:.

Sudo mkdir -p /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin

et faites un lien symbolique:

Sudo ln -s /usr/bin/Ruby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby
3
Vanessa Böhner

Regardez ce tutoriel ici: http://ryantvenge.com/2014/09/Ruby-homebrea-yosemite/

Cela a fonctionné pour moi!

2
user790999

Remarque: Ne procédez comme indiqué ci-dessous que si vous vous retrouvez dans un état complètement défaillant, car cela est très dangereux.

A titre d'exemple, j'ai continué à obtenir 

$ Sudo ln -s Current 1.8 

mise à jour de $ brasser 

/usr/local/Library/brew.rb:18:in ': méthode d'aide indéfinie? ’pour [“ update ”]: Array (NoMethodError) 

Je viens juste d’obtenir ceci… (peu importe la commande, changez simplement «update» avec la commande) J'ai résolu le problème en demandant un dossier de copains /usr/local. J'ai ensuite fait une sauvegarde de mon dossier /usr/local.

Sudo mv/usr/local /usr/local.orig

J'ai ensuite déplacé son /usr/local vers le mien

Sudo mv ~/Téléchargements/local/usr/local

Remarque: Vous allez probablement perdre certaines données, assurez-vous donc de faire une sauvegarde.

0
abc123

erreur de mise à jour de la bière peut être corrigé avec ceci:

Sudo chown -R $USER:admin /usr/local
cd /usr/local
git reset --hard Origin/master
brew update

https://github.com/Homebrew/homebrew/issues/19140

0
spicyramen