0

gem install fails for any gem (e.g. bundler, cocoapods).

$ gem install bundler ERROR: While executing gem ... (Errno::EINVAL) Invalid argument

Background

On a new macbook (Mid 2015) running OSX El Capitan v10.11.6 (15G31), I started setting it up for development work and installed xcode8, brew & ruby. My gem env:

$ gem env
RubyGems Environment:
  - RUBYGEMS VERSION: 2.5.1
  - RUBY VERSION: 2.3.1 (2016-04-26 patchlevel 112) [x86_64-darwin15]
  - INSTALLATION DIRECTORY: /usr/local/bin
  - USER INSTALLATION DIRECTORY: /Users/__username__/.gem/ruby/2.3.0
  - RUBY EXECUTABLE: /usr/local/opt/ruby/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/bin/bin
  - SPEC CACHE DIRECTORY: /Users/__username__/.gem/specs
  - SYSTEM CONFIGURATION DIRECTORY: /usr/local/Cellar/ruby/2.3.1_1/etc
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-15
  - GEM PATHS:
     - /usr/local/bin
     - /Users/__username__/.gem/ruby/2.3.0
     - /usr/local/lib/ruby/gems/2.3.0
     - /usr/local/Cellar/ruby/2.3.1_1/lib/ruby/gems/2.3.0
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - "gem" => "-n/usr/local/bin"
  - REMOTE SOURCES:
     - https://rubygems.org/
  - SHELL PATH:
     - /Library/Frameworks/Python.framework/Versions/3.4/bin
     - /Library/Frameworks/Python.framework/Versions/3.4/bin

Some of existing posts:

Many of the existing posts are focused on another similar error you get that is related to "rootless" security feature in El Capitan:

ERROR: While executing gem ... (Errno::EPERM) Operation not permitted

Some of Errno::EPERM related posts: 1: CocoaPods issue 3680, 2: Stackoverflow Windows7, 3: Bundler issue 4065

What didn't work:

gem install variants

$ sudo gem install bundler -n /usr/local/bin -V

Setting $GEM_HOME to /usr/local/bin and ~/.gems.

echo $GEM_HOME /usr/local/bin echo $GEM_HOME ~/.gems

"rootless" disable

sudo nvram boot-args="rootless=0"; sudo reboot

Community
  • 1
  • 1
lal
  • 7,410
  • 7
  • 34
  • 45

1 Answers1

0

Seems rubygems version 2.5.1 has some issues. I installed older ruby version 2.2.5 that comes with rubygems version 2.4.5.1.

Used brew install ruby, brew uninstall ruby to fix the issue (Errno::EINVAL).

gem env RubyGems Environment: - RUBYGEMS VERSION: 2.4.5.1 - RUBY VERSION: 2.2.5 (2016-04-26 patchlevel 319) [x86_64-darwin15] - INSTALLATION DIRECTORY: /Users/ashok.meena/.rbenv/versions/2.2.5/lib/ruby/gems/2.2.0 - RUBY EXECUTABLE: /Users/__username__/.rbenv/versions/2.2.5/bin/ruby - EXECUTABLE DIRECTORY: /Users/__username__/.rbenv/versions/2.2.5/bin - SPEC CACHE DIRECTORY: /Users/__username__/.gem/specs - SYSTEM CONFIGURATION DIRECTORY: /Users/__username__/.rbenv/versions/2.2.5/etc - RUBYGEMS PLATFORMS: - ruby - x86_64-darwin-15 - GEM PATHS: - /Users/__username__/.rbenv/versions/2.2.5/lib/ruby/gems/2.2.0 - /Users/__username__/.gem/ruby/2.2.0 - GEM CONFIGURATION: - :update_sources => true - :verbose => false - :backtrace => false - :bulk_threshold => 1000 - "gem" => "-n/usr/local/bin" - REMOTE SOURCES: - https://rubygems.org/ - SHELL PATH: - /Users/__username__/.rbenv/versions/2.2.5/bin - /usr/local/Cellar/rbenv/1.0.0/libexec

lal
  • 7,410
  • 7
  • 34
  • 45