J'ai des privilèges limités sur une machine partagée que j'utilise, donc je ne peux pas installer de gemmes comme d'habitude. Par exemple:
$ gem install request-log-analyzer
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /usr/lib/Ruby/gems/1.8 directory.
Est-il possible d'installer une gemme localement? (si c'est important, j'essaye d'installer ce bijo .)
J'ai vu un certain nombre de publications sur Stack Overflow qui parlaient de l'utilisation de Bundler ou de gemfiles, mais je n'installe pas cette gemme pour un Ruby on Rails - I je veux juste l'utiliser de façon isolée.
J'utilise Linux, mais je ne sais pas quelle saveur cependant.
Ajouter le --local
drapeau à votre installation:
gem install --local request-log-analyzer
Si cela pose problème, essayez de télécharger la gemme manuellement et de pointer gem
directement vers elle en utilisant:
gem install --local path/to/gem/filename.gem
Si vous souhaitez l'installer chez votre utilisateur, selon rubygems :
Lorsque vous utilisez l'option --user-install, RubyGems installe les gemmes dans un répertoire de votre répertoire personnel, quelque chose comme ~/.gem/Ruby/1.9.1. Les commandes fournies par les gemmes que vous avez installées se retrouveront dans ~/.gem/Ruby/1.9.1/bin. Pour que les programmes qui y sont installés soient disponibles pour vous, vous devez ajouter ~/.gem/Ruby/1.9.1/bin à votre variable d'environnement PATH.
La commande pour cela serait simplement
gem install --user-install request-log-analyzer
Tu peux essayer:
gem install --user-install gem_name
Vous pouvez simplement utiliser RVM: Ruby Version Manager . Il s'agit d'un gestionnaire de version complet, dans la lignée du gestionnaire de version de nœud (nvm) et d'autres, en ce qu'il vous permet d'avoir différentes versions de Ruby et différentes collections de gemmes pour chaque projet. Il fait le travail de garder les gemmes isolées les unes des autres ainsi que du système Ruby, mais au détriment de l'apprentissage d'un gestionnaire de version complet.
Lorsqu'il est exécuté sans root, il s'installe localement dans ~/.rvm et n'affecte pas les autres utilisateurs.