I've upgraded to El Capitan and since then I can't update my pods.
$ pod update
-bash: pod: command not found
So I've tried to reinstall CocoaPods and got this:
$ sudo gem install cocoapods
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
I am the administrator on this computer. Why is this happening?
This is caused by the new System integrity protection feature introduced in El Capitan. It restricts even administrators from writing to /usr/bin
.
Your best option would be to install gems without needing sudo
. There is a good guide on how to do that:
export GEM_HOME=$HOME/.gem
export PATH=$GEM_HOME/bin:$PATH
gem install cocoapods
From CocoaPods issues 3736
Uninstall all instances of cocopods (just to be safe and keep things clean) see fully uninstall Cocoapods
sudo gem uninstall cocoapods
or even better fully uninstall all components (and select All versions for each)
gem list --local | grep cocoapods | awk '{print $1}' | xargs sudo gem uninstall
Install again
sudo gem install -n /usr/local/bin cocoapods
Change access permission
sudo chmod +rx /usr/local/bin/
This should work for you
sudo gem install -n /usr/local/bin cocoapods
For whatever reason, the rootless stuff seems less restrictive when one simply upgrades the system. I could sudo gem install cocoapods just fine on a machine upgraded from 10.10 - however, binstubs are no longer installed into /usr/bin:
$ sudo gem install cocoapods
[...]
1 gem installed
$ export PATH=$PATH:/Library/Ruby/bin
$ pod --version
0.37.2
We have heard from some users that they receive this error when doing a system-wide installation:
ERROR: While executing gem ... (Errno::EPERM) Operation not permitted - /usr/bin/pod
We aren't sure why gem behaves differently on some systems, but this can be solved by passing
-n /usr/local/bin
to the install command, so that the pod executable gets installed there.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With