ERREUR: lors de l'exécution ... bijou (Gemme::FilePermissionError)
J'ai vérifié toutes les autres réponses semblables et n'ont pas été exactement comme le mien, ni aucune de ces solutions ne fonctionne pour moi.
gem environment
et sudo gem environment
donnent le même résultat:
RubyGems Environment:
- RUBYGEMS VERSION: 1.5.3
- RUBY VERSION: 1.8.7 (2011-12-28 patchlevel 357) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.8
- RUBY EXECUTABLE: /usr/local/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/local/lib/ruby/gems/1.8
- /home/ava/.gem/ruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org/
rvm -v
: rvm 1.22.3
ruby -v
: ruby 1.8.7
OSX 10.8.4
echo $PATH
/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/home/ava/.rvm/bin:/home/ava/bin
gem install <gem-name>
donne
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions into the /usr/local/lib/ruby/gems/1.8 directory.
alors que je suis en mesure d'installer via sudo. Ce que je fais mal?
Mise à JOUR:
Que par les commentaires et ce post, j'ai couru suivantes:
rvm implode
puis ré-installé la version stable.
rvm install 1.9.3
ou de tout autre ruby installation échoue avec le
Error running '__rvm_make -j24',
please read /home/ava/.rvm/log/log/1378418790_ruby-1.9.3-p194/make.log
There has been an error while running make. Halting the installation.
make.log
[2013-09-05 22:06:48] make
current path: /home/ava/.rvm/src/ruby-1.9.3-p194
command(2): make -j24
CC = gcc
LD = ld
LDSHARED = gcc -shared
CFLAGS = -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Werror-implicit-function-declaration -fPIC
XCFLAGS = -include ruby/config.h -include ruby/missing.h -fvisibility=hidden -DRUBY_EXPORT
CPPFLAGS = -I. -I.ext/include/x86_64-linux -I./include -I.
DLDFLAGS = -Wl,-soname,libruby.so.1.9
SOLIBS = -lpthread -lrt -ldl -lcrypt -lm
compiling main.c
compiling dmydln.c
compiling dmyencoding.c
compiling version.c
compiling miniprelude.c
compiling array.c
compiling bignum.c
compiling class.c
compiling compar.c
compiling complex.c
compiling dir.c
compiling dln_find.c
compiling enum.c
compiling enumerator.c
compiling error.c
compiling eval.c
compiling load.c
compiling proc.c
compiling file.c
:
:
:
In file included from ossl.h:213,
from ossl_pkcs5.c:5:
openssl_missing.h:71: error: conflicting types for ‘HMAC_CTX_copy’
/usr/local/include/openssl/hmac.h:102: error: previous declaration of ‘HMAC_CTX_copy’ was here
openssl_missing.h:95: error: conflicting types for ‘EVP_CIPHER_CTX_copy’
/usr/local/include/openssl/evp.h:459: error: previous declaration of ‘EVP_CIPHER_CTX_copy’ was here
make[2]: *** [ossl_pkcs5.o] Error 1
In file included from ossl.h:213,
from ossl_x509req.c:11:
:
:
:
qu'est-ce que la sortie de
rvm liste
essayez :
Je ne pense pas que 1.8.2 est pris en charge sur plus de rien. Il n'a pas été tenu à jour, et il ne compile pas sans beaucoup de corrigés manuellement. Après tout, il a été publié en 2004. Pourquoi voudriez-vous 1.8.2, de toute façon?
rvm list
et which ruby
? Fondamentalement, il existe deux ruby 1.8 installée dans votre ordinateur et vous avez besoin d'utiliser l'un installé dans /home/ava/.gem/ruby/1.8 au lieu de /usr/local/lib/ruby/gems/1.8. Réglage de la rvm d'utiliser le droit ruby devrait résoudre le problème.rvm liste
ext-ree-1.8.7-2011.12
qui ruby /usr/local/bin/ruby
essayez :
rvm remove ext-ree-1.8.7-2011.12
. rvm install 1.8.2
. rvm utiliser "la nouvelle version de ruby installé' --par défautrvm install 1.8.2
échoue avec There is no checksum for 'http://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.2.tar.gz' or 'ruby-1.8.2.tar.gz', it's not possible to validate it.
Je ne pense pas que 1.8.2 est pris en charge sur plus de rien. Il n'a pas été tenu à jour, et il ne compile pas sans beaucoup de corrigés manuellement. Après tout, il a été publié en 2004. Pourquoi voudriez-vous 1.8.2, de toute façon?
OriginalL'auteur Ava | 2013-09-03
Vous devez vous connecter pour publier un commentaire.
Pour résoudre l'erreur:
la solution suivante a fonctionné pour moi:
L'utilisation de sudo pour installer un rubis gemme? Pas sûr que ce soit nécessaire, beaucoup moins intelligents--en termes de sécurité, de stabilité, etc.
OriginalL'auteur Amandeep Singh
Si vous avez installé
rvm
en tant qu'utilisateur root, vous devezsudo
à installer quoi que ce soit.Vous pouvez installer
rvm
en mode utilisateur en tant qu'utilisateur normal, dans ce cas, tout est stocké dans votre répertoire home et pas desudo
est nécessaire.Si vous n'êtes pas engagé à cette installation, le type de
sudo rvm implode
et recommencer.sudo rvm implode
et recommencer". Totalement.Il a essayé mais n'a pas aider. Veuillez vérifier ma mise à jour!
merci..il économise mon temps..j'ai adoré!
OriginalL'auteur tadman
Votre mondiale (à l'échelle du système) fichier de config a probablement la
--no-utilisateur-install
drapeau. Créer/modifier votre local~/.gemrc
fichier et ajouter la ligne suivante(s):Note
Le répertoire réel pour la
gemdir
option varie en fonction de votre système/désir; il peut ou peut ne pas être nécessaire, mais c'est probablement mieux pour désigner l'souhaité répertoire d'installation au sein de votrehome
dossier (gemdir
) que d'assumer ça va être pris en charge par lui-même.La Wiki ArchLinux a quelques utiles/bien organisé informations relatives à cette.
chruby
Sinon, semblable à la
rvm
solution déjà proposée, vous pouvez essayer d'utiliser chruby de maintenir, de configurer et d'utiliser des versions locales deruby
. Pour installer d'autres versions deruby
, cependant, vous devez utiliser ruby-installer.De le README du projet:
OriginalL'auteur ILMostro_7
De la première installation de RVM et puis définissez l'utilisateur gem dossier dans votre .zshrc ou .bashrc ou encore:
Maintenant
gem i LIB
va mettre des gemmes à l'intérieur de l'abri.génial! merci
Pour les personnes utilisant RVM, cette solution est idéale pour transporter en toute sécurité à l'aide du système de Ruby. Ne pas oublier d'ajouter
$HOME/.gem/bin
de votre chemin.OriginalL'auteur dimpiax
en supposant que rvm est installé, vous pouvez faire quelque chose comme:
Pas besoin de faire de sudo.
OriginalL'auteur Allan
Vous n'avez probablement pas des autorisations en écriture à quelque part le long de ce chemin (le plus probable /usr/local/lib), vous devez modifier l'emplacement de votre RVM de stockage afin de ne pas besoin de sudo
OriginalL'auteur dannymc129
Être conscient que si vous avez choisi d'effectuer une multi-utilisateur installation de rvm, vous devez ajouter chaque utilisateur de la rvm groupe via
De l'information pertinente à partir de rvm est FAQ
OriginalL'auteur the_ogre