web-dev-qa-db-fra.com

Comment corriger l'erreur "Vous ne disposez pas d'autorisations d'écriture dans le répertoire/usr/bin" lors de l'installation de Rails?

J'essaie d'installer Rails 3 sur un tout nouveau MacBook Pro fonctionnant sous OS X 10.6.3, Ruby 1.8.7 et Rails 2.3.5. Je me demande si je me suis maquillé. Jusqu'à présent, j'ai exécuté ces commandes:

$ gem update --system
$ gem install arel tzinfo builder memcache-client rack rack-test rack-mount erubis mail text-format thor bundler i18n
$ gem install Rails --pre

Cependant, lorsque j'exécute la dernière commande, j'obtiens cette erreur:

ERROR:  While executing gem ... (Gem::FilePermissionError)
    You don't have write permissions into the /usr/bin directory.

Je pense que cela veut que je lance la commande avec Sudo pour pouvoir écrire plus de /usr/bin/Rails. Mais si je le fais, ne vais-je pas écraser l'exécutable de Rails 2.3.5? Je ne veux pas faire ça. Au lieu de cela, j'aimerais conserver les deux versions de Rails. Comment je fais ça?

60
Jim

Je suggérerais d'utiliser RVM cela vous permet d'avoir plusieurs versions de Ruby/Rails installées avec des profils de gemmes et de garder toutes vos gemmes contenues les unes des autres. Vous pouvez consulter un article similaire Comment puis-je installer Ruby on Rails 3 sur OSX

12
Tarellel

utilisez le paramètre -n pour installer comme pour les cocoapodes:

Sudo gem install cocoapods -n /usr/local/bin
255
Pradeep Kachhawaha

Vous pouvez utiliser Sudo gem install -n /usr/local/bin cocoapods

Cela fonctionne pour moi.

17
Damini
Sudo gem install cocoapods --pre -n /usr/local/bin

Cela fonctionne pour moi.

7
tong Xu

Pour corriger votre erreur spécifique, vous devez exécuter cette commande en tant que Sudo, à savoir:

Sudo gem install Rails --pre
6
Andrew Nesbitt

L'utilisation de -n/usr/local/bin est efficace, MAIS je devais revenir à cette page chaque fois que je souhaitais mettre à jour un paquet à nouveau. J'ai donc trouvé un correctif permanent pour cela. 

Pour ceux intéressés à résoudre ce problème de façon permanente:

Créer un fichier ~/.gemrc

`vim .gemrc`

Ajoutez ce qui suit:

`:gemdir:
    - ~/.gem/Ruby
install: -n /usr/local/bin`

Maintenant, vous pouvez exécuter votre commande normalement sans l'indicateur -n.

Prendre plaisir!

5
Francois Nadeau

Cette erreur m’a frappé après avoir correctement installé RVM . Solution: redémarrez le terminal.

Référence Installation RVM de RailsCast tutorial.

3
Akorn

Pour moi, quelque chose de différent a fonctionné, que j'ai trouvé dans cette réponse à partir d'une question similaire. Cela n’aidera probablement pas OP, mais peut-être que quelqu'un comme moi aurait eu un problème similaire.

Vous devriez en effet utiliser rvm, mais comme personne ne vous a expliqué comment faire ceci sans rvm, vous avez ceci:

Sudo gem install tzinfo builder memcache-client rack rack-test rack-mount \
  abstract erubis activesupport mime-types mail text-hyphen text-format   \
  thor i18n rake bundler arel railties Rails --prerelease --force
0
Seba D'Agostino