Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ERROR: While executing gem ... (Gem::FilePermissionError)

I have checked all the other similar answers and none was exactly like mine, neither did any of those solutions work for me.

gem environment and sudo gem environment give the same result:

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> gives

ERROR:  While executing gem ... (Gem::FilePermissionError)     You don't have write permissions into the /usr/local/lib/ruby/gems/1.8 directory. 

whereas I am able to install the same via sudo. What am I doing wrong?

UPDATE:

As per comments and this post, I ran following:

rvm implode and then re installed the stable version. rvm install 1.9.3 or any other ruby installation fails with

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: : : : 
like image 920
Ava Avatar asked Sep 03 '13 19:09

Ava


People also ask

What is the gem command?

The gem command allows you to interact with RubyGems. Ruby 1.9 and newer ships with RubyGems built-in but you may need to upgrade for bug fixes or new features. To upgrade RubyGems, visit the download page. If you want to see how to require files from a gem, skip ahead to What is a gem. Finding Gems.

How do I install gems?

To install a gem, use gem install [gem] . Browsing installed gems is done with gem list . For more information about the gem command, see below or head to RubyGems' docs. There are other sources of libraries though.


2 Answers

ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /Library/Ruby/Gems/2.3.0 directory.

  1. Install RVM
  2. Set the gem folder in your shell resource file. I.e. .zshrc, .bashrc etc
export GEM_HOME="$HOME/.gem" 
  1. Install you gem gem i LIBRARY_NAME
like image 140
dimpiax Avatar answered Sep 18 '22 03:09

dimpiax


To resolve the error:

ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions into the /usr/local/lib/ruby/gems/1.8 directory.

the following solution worked for me:

sudo gem install -n /usr/local/bin cocoapods 
like image 36
Amandeep Singh Avatar answered Sep 20 '22 03:09

Amandeep Singh