Question

L'arrière-plan

Je suis un peu nouveau sur Unix et viens d'un environnement .NET mais j'en sais maintenant assez pour me causer des ennuis.

J'ai un code existant avec lequel je travaille et qui utilise Cocoapods, j'ai donc essayé d'installer Cocoapods.

Au départ, lorsque je l'ai installé, il n'a pas été indiqué qu'il nécessitait une version plus récente de Ruby.Pour installer Ruby, j'ai utilisé un programme d'installation appelé rvm.Avec quelques efforts, j'ai installé RVM et obtenu Ruby version 2.1.0.

Quand je vais dans le répertoire où se trouve l'application et que je tape pod install il répond avec pod: command not found.L’hypothèse est qu’il doit y avoir un problème avec l’installation des cabosses de cacao.Si j'essaie une commande pour installer ou désinstaller Cocoapods

gem install cocoapods    or gem uninstall cocoa pods

il renvoie la même réponse qui est :

/Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_gem.rb:59:in `gem': uninitialized constant Gem::LOADED_SPECS_MUTEX (NameError)
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:46:in `require'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/rubygems.rb:601:in `load_yaml'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/config_file.rb:328:in `load_file'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/config_file.rb:197:in `initialize'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/gem_runner.rb:74:in `new'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/gem_runner.rb:74:in `do_configuration'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/lib/ruby/site_ruby/2.1.0/rubygems/gem_runner.rb:39:in `run'
from /Users/aliabidhusain/.rvm/rubies/ruby-2.1.2/bin/gem:21:in `<main>'

Je pense que les tentatives infructueuses d’installation de cabosses de cacao ont peut-être corrompu quelque chose, ou mis quelque chose au mauvais endroit.Je souhaite désinstaller complètement les cocoapods et le réinstaller, mais l'installation et la désinstallation ne font rien.

MISE À JOUR: En utilisant gem list --local | grep cocoa pods juste pour voir quelle version de CocoaPods j'ai installée me donne exactement le même résultat.

La question:

Quelqu'un connaît-il un moyen de résoudre ce problème ou d'extraire et de reconstruire complètement les CocoaPods ?

Était-ce utile?

La solution

gem env vous indiquera le chemin d'installation de vos gemmes.

D'après l'erreur que vous avez eue la première fois que vous avez installé la gemme, il pourrait s'agir d'une erreur PATH.Peut-être que votre dossier gems n'est pas correctement défini dans le PATH et que le shell ne trouve pas les Cocoapods.

Essayez d'imprimer votre PATH avec echo $PATH et voyez si le - RÉPERTOIRE EXÉCUTABLE :depuis gem env y a-t-il.

Essayez aussi gem pristine --all

Si cela ne fonctionne pas, essayez de passer à Ruby 2.1.2 et de réinstaller les cocoapods.

Autres conseils

J'ai été brillamment aidé par @Pedros (la réponse actuellement acceptée), mais comme il y avait tellement de commentaires, j'ai décidé de nettoyer la réponse qui fonctionnait pour moi.Je garderai sa réponse acceptée car il m'a vraiment énormément aidé sur ce point.Si cela vous est utile et que vous choisissez de voter positivement, veuillez également voter positivement pour la réponse acceptée, car elle dérive presque entièrement de sa réponse.

Voici ce que j'ai découvert :Dans mon cas, RVM n'était pas installé correctement et RubyGems n'était donc pas installé correctement.Cela a à son tour empêché l'installation correcte des CocoaPods.

Pour désinstaller et supprimer complètement RVM : essayer sudo rvm implode ou tu peux faire sudo rm -rf ~/.rvm

J'ai fait quelques vérifications pour voir si j'avais les bonnes versions.Je publierai ce qu'ils devraient être maintenant, mais cela peut être différent à mesure que les versions sont mises à jour.

ruby --version devrait être 2.1.2

which ruby devrait être le rubis RVM.(Pour voir s'il n'y a pas de conflit avec le rubis d'OSX)

gem --version devrait être 2.2.2

Réinstallez RVM en procédant comme suit : \curl -sSL https://get.rvm.io | bash -s stable --ruby

Réinstallez CocoaPods comme ceci : gem install cocoapods

J'espère que cela évitera à quelqu'un des heures de développement et une perte de cheveux :)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top