OSX El Capitan, gem install "ОШИБКА: во время выполнения gem ... (Errno::EINVAL) Недопустимый аргумент"
Установка gem не удалась для любого gem (например, связующего, cocoapods).
$ gem install bundler
ERROR: While executing gem ... (Errno::EINVAL)
Invalid argument
Фон
На новом macbook (середина 2015 г.) под управлением OSX El Capitan v10.11.6 (15G31) я начал настраивать его для разработки и установил xcode8, brew & ruby. мой 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
Некоторые из существующих постов:
Многие из существующих сообщений посвящены другой подобной ошибке, которая связана с "безродной" функцией безопасности в El Capitan:
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted
Некоторые из сообщений, связанных с Errno::EPERM: 1: проблема CocoaPods 3680, 2: Stackru Windows7, 3: проблема Bundler 4065
Что не сработало:
gem install
варианты
$ sudo gem install bundler -n /usr/local/bin -V
Установка $GEM_HOME в /usr/local/bin и ~/.gems.
echo $GEM_HOME
/usr/local/bin
echo $GEM_HOME
~/.gems
отключение без прав
sudo nvram boot-args="rootless=0"; sudo reboot
1 ответ
Кажется, версия rubygems 2.5.1 имеет некоторые проблемы. Я установил более раннюю версию ruby 2.2.5, которая поставляется с rubygems версии 2.4.5.1.
Используемый brew install ruby
, brew uninstall ruby
чтобы исправить проблему (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