web-dev-qa-db-ja.com

RubyGem 2.7.1でCocoapodsをインストールできません

ココアポッドが機能しなかったため、次のコマンドを実行しました。

  1. このbashスクリプトを実行して、関連するすべてのgemを削除します。

    for i in $( gem list --local --no-version | grep cocoapods );
    do 
        Sudo gem uninstall $i; 
    done
    
  2. 〜/ .cocoapodsを削除して、podspecsのキャッシュを削除します。

    rm -rf ~/.cocoapods/
    
  3. rubygemを更新します。

    Sudo gem update --system
    
  4. ココアポッドを再インストールします。

    Sudo gem install cocoapods
    

次に、ステップ3とステップ4でファイル許可拒否エラーメッセージが表示されました。

Step3エラーメッセージ:
...
...
0秒後にrubygems-updateのドキュメントのインストールを完了しました
RubyGems 2.7.1のインストール
エラー:gemの実行中...(Errno :: EPERM)
操作は許可されていません@ rb_sysopen-/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/gem

Step4エラーメッセージ:
フェッチ:cocoapods-core-1.3.1.gem(100%)
正常にインストールされたcocoapods-core-1.3.1
フェッチ:cocoapods-deintegrate-1.0.1.gem(100%)
正常にインストールされたcocoapods-deintegrate-1.0.1
フェッチ:cocoapods-downloader-1.1.3.gem(100%)
正常にインストールされたcocoapods-downloader-1.1.3
フェッチ:cocoapods-plugins-1.0.0.gem(100%)
正常にインストールされたcocoapods-plugins-1.0.0
フェッチ:cocoapods-search-1.0.0.gem(100%)
正常にインストールされたcocoapods-search-1.0.0
フェッチ:cocoapods-stats-1.0.0.gem(100%)
正常にインストールされたcocoapods-stats-1.0.0
取得:cocoapods-trunk-1.3.0.gem(100%)
正常にインストールされたcocoapods-trunk-1.3.0
フェッチ:cocoapods-try-1.1.0.gem(100%)
正常にインストールされたcocoapods-try-1.1.0
エラー:gemの実行中...(Gem :: FilePermissionError)/ usr/binディレクトリへの書き込み権限がありません。

Linux/OSXファイルシステムに関する知識は限られていますが、何が間違っているのかわかりません。

コンピューターに関する情報は次のとおりです。

  1. OS:

    macOS High Sierra 10.13.1

  2. Xcode:

    バージョン9.0.1(9A1004)
    アプリケーションフォルダーでXCode 7.3.1をXcode_7に名前変更しました

  3. 環境パス:

    echo $PATH
    

    /ライブラリ/Frameworks/Python.framework/Versions/3.4/bin:
    /usr/local/bin:
    /usr/bin:
    /置き場:
    /usr/sbin:
    /sbin:
    /opt/X11/bin:
    /Applications/Server.app/Contents/ServerRoot/usr/bin:
    /Applications/Server.app/Contents/ServerRoot/usr/sbin

  4. 自作:

    brew --version
    

    自作1.3.6
    Homebrew/homebrew-core(gitリビジョン985b;最終コミット2017-11-07)

    brew list
    

    cmake libxml2 ninja pkg-config readline wget gdbm libyaml openssl python3 sqlite xz

  5. RubyGems:

    gem --version
    

    2.7.1

    gem list
    

    * LOCAL GEMS *
    activesupport(5.1.4、4.2.10)
    bigdecimal(1.3.2、デフォルト:1.2.8)
    CFPropertyList(2.3.5、2.2.8)
    claide(1.0.2)
    colored2(3.1.2)
    concurrent-Ruby(1.0.5)
    did_you_mean(1.0.0)
    エスケープ(0.0.4)
    fourflusher(2.0.1)
    fuzzy_match(2.1.0、2.0.4)
    gh_inspector(1.0.3)
    i18n(0.9.1)
    io-console(0.4.6、デフォルト:0.4.5)
    json(2.1.0、デフォルト:1.8.3)
    libxml-Ruby(3.0.0、2.9.0)
    mini_portile2(2.3.0)
    minitest(5.10.3)
    molinillo(0.6.4、0.5.7)
    nanaimo(0.2.3)
    昼寝(1.1.0)
    net-telnet(0.1.1)
    netrc(0.11.0)
    のこぎり(1.5.6)
    power_assert(1.1.1)
    psych(2.2.4、デフォルト:2.1.0)
    レーキ(12.2.1、10.4.2)
    rdoc(5.1.0、デフォルト:4.2.1)
    ルビーマッチョ(1.1.0)
    ruby​​gems-update(2.7.1)
    sqlite3(1.3.11)
    テストユニット(3.2.6)
    thread_safe(0.3.6)
    tzinfo(1.2.4)
    xcodeproj(1.5.3)

9
Lee Paul

これは私のために働いてしまいました。

また、Ruby実行中の再インストールエラーSudo gem update --system

ERROR:  While executing gem ... (Errno::EPERM)
            Operation not permitted @ rb_sysopen - 
        /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/gem

次に、同じコマンド(Sudo gem update --system)を再度実行しようとしましたが、最新バージョンはすでにインストールされています。完了 =

実行する代わりに

Sudo gem install cocoapods

試してみる

Sudo gem install -n /usr/local/bin cocoapods

それは私のために働いてしまいました!ただし、手順1で行っているように、以前のココアポッドをbashスクリプトでクリーンアップしませんでしたが、再インストールを行っても違いはありません。

31
Hjalmar

Hjalmarの答えはうまくいくと思います。しかし、結局Homebrewを使用してRubyをインストールすることになり、すべてが正常に機能します。次のように入力します:

brew install Ruby

ターミナルで。

5
Lee Paul