Help us understand the problem. What is going on with this article?

MacOSX El Capitanでcocoapodsインストールが出来ない時の対処法

More than 3 years have passed since last update.

新しいcocoapodsをインストールしようとしたらエラーが出たのでメモ

エラーの内容

sudo gem install cocoapodsを行うと次のようなエラーが出てインストール出来ません。

ERROR:  While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj

原因

El Capitanからrootlessという概念が登場しました。
簡単に説明をすると、root権限を持つユーザーでも

  • /usr
  • /sbin
  • /System

などへのアクセスが制限されるというものです。
ここに何か作ろうとするとOperation not permittedと怒られます。
これが原因で/usr配下にcocoapodsがインストール出来ないと思われます。

対処法

対処法は2つ

  • rootlessを無理やり取っ払う(非推奨)
  • インストールフォルダを変更する

rootlessを無理やり取っ払う(非推奨)

sudo nvram boot-args=“rootless=0”
この一行を実行後に再起動すればrootユーザーのアクセス制限は解除されます。
これで今まで通りインストールが出来ると思われます。
※セキュリティ上の関係で絶対にオススメしません

インストールフォルダを変更する

sudo gem install -n /usr/local/bin cocoapods
cocoapodsをインストールする際に/usr/local/bin配下にインストールします。
これが一番オススメ!簡単に解決することが出来ます。

ちなみに、これでバージョンとインストールフォルダを指定してインストールが出来ます。
sudo gem install -n /usr/local/bin -v 0.35.0 cocoapods

trsxxii
iOS/Android Developer. Swift, Objective-C, Java... Follow me!!!
recruitlifestyle
飲食・美容・旅行領域の情報サイトや『Airレジ』などの業務支援サービスなど、日常消費領域に関わるサービスの提供するリクルートグループの中核企業
http://www.recruit-lifestyle.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした