Установка Cocoapods на ошибку OS X El Capitan
Прежде всего. Я обновил El Capitan из-за iOS 9.3, и он поддерживает только в xCode 7.3.
После обновления я обнаружил, что команда pod
не работает.
Я выполнил:
sudo gem install cocoapods
ERROR: Error installing cocoapods:
activesupport requires Ruby version >= 2.2.2.
Итак, моя проблема в том, что я не могу установить cocoapods. Я ничего не знаю о драгоценных камнях и рубинах. Кто-нибудь знает, как справиться с этим?
У меня была вторая OS X с El Capitan 10.11.4, и все прошло нормально, поэтому я не знаю, откуда эта проблема.
ОБНОВЛЕНИЕ: 5 апреля 2016 г.
Я выполнил несколько команд на терминале для получения дополнительной информации:
Kapucha:~ kapucha$ which ruby
/usr/bin/ruby
Kapucha:~ kapucha$ which gem
/usr/bin/gem
Kapucha:~ kapucha$ which brew
/usr/local/bin/brew
Kapucha:~ kapucha$ which rvm
/Users/kapucha/.rvm/bin/rvm
Версии:
Kapucha:~ kapucha$ ruby --version
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin15]
Kapucha:~ kapucha$ gem --version
2.2.2
Kapucha:~ kapucha$ brew --version
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15 (Errno::EACCES)
Kapucha:~ kapucha$ rvm --version
rvm 1.27.0 (latest) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]
.bash_profile и .profile
Kapucha:~ kapucha$ cat .bash_profile
export JAVA_HOME=$(/usr/libexec/java_home)
. ~/.bashrc
source ~/.profile
Kapucha:~ kapucha$ cat .profile
export PATH="$PATH:$HOME/.rvm/bin" # Add RVM to PATH for scripting
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
rvm list и rvm info
Kapucha:local kapucha$ rvm list
rvm rubies
# No rvm rubies installed yet. Try 'rvm help install'.
Kapucha:local kapucha$ rvm info
system:
system:
uname: "Darwin Kapucha.local 15.4.0 Darwin Kernel Version 15.4.0: Fri Feb 26 22:08:05 PST 2016; root:xnu-3248.40.184~3/RELEASE_X86_64 x86_64"
system: "osx/10.11/x86_64"
bash: "/bin/bash => GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin15)"
zsh: "/bin/zsh => zsh 5.0.8 (x86_64-apple-darwin15.0)"
rvm:
version: "rvm 1.27.0 (latest) by Wayne E. Seguin <[email protected]>, Michal Papis <[email protected]> [https://rvm.io/]"
updated: "18 hours 23 minutes 25 seconds ago"
path: "/Users/kapucha/.rvm"
homes:
gem: "not set"
ruby: "not set"
binaries:
ruby: "/usr/bin/ruby"
irb: "/usr/bin/irb"
gem: "/usr/bin/gem"
rake: "/usr/bin/rake"
environment:
PATH: "/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/filipkotwicki/dev/tools/android-sdk-macosx/platform-tools:~/bin:/opt/X11/bin:/usr/local/git/bin:/Users/kapucha/.rvm/bin:/Users/kapucha/.rvm/bin"
GEM_HOME: ""
GEM_PATH: ""
MY_RUBY_HOME: ""
IRBRC: ""
RUBYOPT: ""
gemset: ""
Когда я пытаюсь установить Ruby с rvm
Kapucha:local kapucha$ rvm install 2.2.2
Searching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/osx/10.11/x86_64/ruby-2.2.2.tar.bz2
Checking requirements for osx.
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15 (Errno::EACCES)
...
ERROR: '/bin' is not writable - it is required for Homebrew, try 'brew doctor' to fix it!
Requirements installation failed with status: 1.
Пробовал brew врач с тем же результатом:
Kapucha:local kapucha$ brew doctor
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15 (Errno::EACCES)
Ответы
Ответ 1
Наконец, я решил эту проблему.
Целью было установить cocoapods, но были ошибки, которые мне нужны ruby >= 2.2.2.
Установка rvm install 2.2
не выполнена из-за ошибки:
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/fileutils.rb:245:in `mkdir': Permission denied - /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-15 (Errno::EACCES)
Запуск brew приводил к той же ошибке. Поэтому я решил сначала исправить brew. Он был исправлен путем удаления и установки его снова. Это было непросто. Удаление script не работает, потому что у меня не было папки .git
в /usr/local
.
Я решил предоставить папку .git.
Я клонировал git clone https://github.com/Homebrew/homebrew.git
в некоторую временную папку, а затем cp -r .git /usr/local/
, поэтому в конце у меня есть папка .git
в моей brew папке /usr/local
. После этого я смог Удалить и установить свежий brew на El Capitan. Взгляните на часть 2 этой ссылки.
С рабочими brew и фиксированными разрешениями для El Capitan в /usr/local
в соответствии с this Я смог установить ruby с rvm:
rvm install 2.2
rvm use 2.2
и окончательно установите cocapods для El Capitan:
sudo gem install -n /usr/local/bin cocoapods
Ответ 2
Здесь более простое решение, чем другие "установки homebrew/use rvm" - сначала установите старую версию "activesupport" (которая совместима с ruby 2.0 и с cocoapods), а затем установите cocoapods.
sudo gem install activesupport -v 4.2.6
sudo gem install cocoapods
Здесь сообщается об ошибке cocoapods, которая предложила этот обходной путь.
Ответ 3
-
Установите Homebrew с помощью этой команды
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
Теперь, когда мы установили Homebrew, мы можем использовать его для установки Ruby.
Мы будем использовать rbenv для установки и управления нашими версиями Ruby.
Для этого запустите в своем терминале следующие команды:
brew install rbenv ruby-build
-
Теперь установите ruby
echo 'if which rbenv > /dev/null;
then eval "$(rbenv init -)";
fi' >> ~/.bash_profilesource ~/.bash_profile
rbenv install 2.3.1
rbenv global 2.3.1
ruby -v
-
установить cocoapods
sudo gem install cocoapods
Ответ 4
Я использовал эту команду и работал правильно: -
sudo gem install activesupport -v 4.2.6
sudo gem install cocoapods
Ответ 5
activesupport
gem, который Cocoapods зависит от, требует версии Ruby больше 2.2.2
(см. здесь).
Какую версию Ruby вы используете (тип ruby --version
)? Возможно, ваша вторая система OS X использует версию Ruby системы (вы можете проверить ее, набрав which ruby
).
Возможно, вам нужно установить более новую версию Ruby (например 2.2.3
). Я рекомендую RVM для установки и управления версиями Ruby на вашем компьютере.
Ответ 6
установите homebrew, используя следующую команду:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
затем установите cocoapods без использования sudo
gem install cocoapods
Ответ 7
Пожалуйста, установите последнюю версию Ruby и RVM (менеджер версий Ruby) из эту ссылку.
Затем запустите "sudo install cocoapods
"
Ответ 8
El Capitan 10.11.3
1) $sudo gem install activesupport -v 4.2.6
2) $sudo gem install -n/usr/local/bin cocoapods