質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

Q&A

解決済

1回答

3075閲覧

CocoaPodsをインストールできない!

kabikira

総合スコア1

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

iOS

iOSとは、Apple製のスマートフォンであるiPhoneやタブレット端末のiPadに搭載しているオペレーションシステム(OS)です。その他にもiPod touch・Apple TVにも搭載されています。

Xcode

Xcodeはソフトウェア開発のための、Appleの統合開発環境です。Mac OSXに付随するかたちで配布されています。

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

0グッド

0クリップ

投稿2023/02/27 14:29

実現したいこと

XCodeでSnapKitを使いたいのですが
CocoaPodsをインストールできません

発生している問題・エラーメッセージ・試したこと

https://pursue.fun/tech/how-to-cocoapods/
上記サイトを見ながらインストールしようとしました。

sudo gem install cocoapods

実行
エラーがでました

ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/gems/2.6.0 directory.

このエラーの原因らしいことが書いてある
https://qiita.com/trsxxii/items/4bb4708de03e6ee14a4a
サイトをみて下記のコマンドを実行しました

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

これもエラーになりました

~ % sudo gem install cocoapods -n /usr/local/bin Password: ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for the /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/gems/2.6.0 directory. /Library/Ruby/Site/2.6.0/rubygems/installer.rb:712:in `verify_gem_home' /Library/Ruby/Site/2.6.0/rubygems/installer.rb:902:in `pre_install_checks' /Library/Ruby/Site/2.6.0/rubygems/installer.rb:302:in `install' /Library/Ruby/Site/2.6.0/rubygems/resolver/specification.rb:104:in `install' /Library/Ruby/Site/2.6.0/rubygems/request_set.rb:194:in `block in install' /Library/Ruby/Site/2.6.0/rubygems/request_set.rb:182:in `each' /Library/Ruby/Site/2.6.0/rubygems/request_set.rb:182:in `install' /Library/Ruby/Site/2.6.0/rubygems/commands/install_command.rb:214:in `install_gem' /Library/Ruby/Site/2.6.0/rubygems/commands/install_command.rb:230:in `block in install_gems' /Library/Ruby/Site/2.6.0/rubygems/commands/install_command.rb:223:in `each' /Library/Ruby/Site/2.6.0/rubygems/commands/install_command.rb:223:in `install_gems' /Library/Ruby/Site/2.6.0/rubygems/commands/install_command.rb:169:in `execute' /Library/Ruby/Site/2.6.0/rubygems/command.rb:323:in `invoke_with_build_args' /Library/Ruby/Site/2.6.0/rubygems/command_manager.rb:251:in `invoke_command' /Library/Ruby/Site/2.6.0/rubygems/command_manager.rb:191:in `process_args' /Library/Ruby/Site/2.6.0/rubygems/command_manager.rb:149:in `run' /Library/Ruby/Site/2.6.0/rubygems/gem_runner.rb:51:in `run' /usr/bin/gem:21:in `<main>'

エラーを検索したらだいたいのサイトがhomebrew + rbenv + rubyで、一般ユーザの領域にrubyの環境を作ることが必要ですとのこと
https://qiita.com/ryamate/items/e51c77fbabc2aec185fc
このサイトをみて実行したコマンドです

brew install rbenv ruby-build
echo 'eval "$(rbenv init - zsh)"' >> ~/.zshrc
source ~/.zshrc
~ % which gem /usr/bin/gem
~ % which ruby /usr/bin/ruby
~ % rbenv versions * system

現在のRuby安定版は 3.2.1だったのでrbenv install 3.2.1実行

~ % rbenv install 3.2.1 To follow progress, use 'tail -f /var/folders/fx/_h88t_5907j_zrby6jsfh0fr0000gn/T/ruby-build.20230227184206.30732.log' or pass --verbose Downloading openssl-3.0.8.tar.gz... -> https://dqw8nmjcqpjn7.cloudfront.net/6c13d2bf38fdf31eac3ce2a347073673f5d63263398f1f69d0df4a41253e4b3e Installing openssl-3.0.8... Installed openssl-3.0.8 to /Users/koalapanda/.rbenv/versions/3.2.1 Downloading ruby-3.2.1.tar.gz... -> https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.1.tar.gz Installing ruby-3.2.1... ruby-build: using readline from homebrew BUILD FAILED (macOS 12.6 using ruby-build 20230222) Inspect or clean up the working tree at /var/folders/fx/_h88t_5907j_zrby6jsfh0fr0000gn/T/ruby-build.20230227184206.30732.HX2pva Results logged to /var/folders/fx/_h88t_5907j_zrby6jsfh0fr0000gn/T/ruby-build.20230227184206.30732.log Last 10 log lines: compiling ossl_x509crl.c compiling ossl_x509ext.c compiling ossl_x509name.c compiling ossl_x509req.c compiling ossl_x509revoked.c compiling ossl_x509store.c linking shared-object date_core.bundle linking shared-object openssl.bundle linking shared-object ripper.bundle make: *** [build-ext] Error 2

エラーがでます
エラーを検索すると
RUBY_CFLAGS="-w" つけてみると解決するかもしれないと
https://qiita.com/kouta1206/items/3c56884df4d10f39ebde
https://autovice.jp/articles/178

コマンド実行してもインストールできません

~ % RUBY_CFLAGS="-w" rbenv install 3.2.1 To follow progress, use 'tail -f /var/folders/fx/_h88t_5907j_zrby6jsfh0fr0000gn/T/ruby-build.20230227185659.83636.log' or pass --verbose Downloading openssl-3.0.8.tar.gz... -> https://dqw8nmjcqpjn7.cloudfront.net/6c13d2bf38fdf31eac3ce2a347073673f5d63263398f1f69d0df4a41253e4b3e Installing openssl-3.0.8... Installed openssl-3.0.8 to /Users/koalapanda/.rbenv/versions/3.2.1 Downloading ruby-3.2.1.tar.gz... -> https://cache.ruby-lang.org/pub/ruby/3.2/ruby-3.2.1.tar.gz Installing ruby-3.2.1... ruby-build: using readline from homebrew BUILD FAILED (macOS 12.6 using ruby-build 20230222) Inspect or clean up the working tree at /var/folders/fx/_h88t_5907j_zrby6jsfh0fr0000gn/T/ruby-build.20230227185659.83636.WJtS11 Results logged to /var/folders/fx/_h88t_5907j_zrby6jsfh0fr0000gn/T/ruby-build.20230227185659.83636.log Last 10 log lines: compiling ossl_x509ext.c compiling ossl_x509name.c compiling ossl_x509req.c linking shared-object date_core.bundle compiling ossl_x509revoked.c compiling ossl_x509store.c installing default openssl libraries linking shared-object openssl.bundle linking shared-object ripper.bundle make: *** [build-ext] Error 2

ちがうRubyのバージョンでやってみても同じエラーでした。

RUBY_CFLAGS="-w" rbenv install 2.5.3

もしかしてCocoaPods入ってる?と思ったが入ってませんでした。

~ % pod --version /Library/Ruby/Site/2.6.0/rubygems.rb:263:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException) from /Library/Ruby/Site/2.6.0/rubygems.rb:282:in `activate_bin_path' from /usr/local/bin/pod:23:in `<main>'

この問題を解決するにはどうすればよいのか教えていただきたいです。よろしくお願いします。

補足情報(FW/ツールのバージョンなど)

M1MacBook Air
OS Monterey ver.12.6
zsh --version
zsh 5.8.1 (x86_64-apple-darwin21.0)
xcode-select --version
xcode-select version 2395.
brew --version
Homebrew 4.0.3

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hoshi-takanori

2023/02/27 14:35

brew install cocoapods でいけるのでは? (rbenv, ruby-build は複数の ruby バージョンを共存させたい場合に使いますが、とりあえず brew install cocoapods すれば最新の ruby が入って、cocoapods もそれを使って動くはず。)
kabikira

2023/02/27 15:05

コメントありがとうございます。brew install cocoapods 実行しましたが ``` Error: Cannot install in Homebrew on ARM processor in Intel default prefix (/usr/local)! Please create a new installation in /opt/homebrew using one of the "Alternative Installs" from: https://docs.brew.sh/Installation You can migrate your previously installed formula list with: brew bundle dump ``` このようなエラーがでました。 このエラーが解決できればcocoapodsがインストールできるかもしれないので このエラーの意味もまた調べてみます。
hoshi-takanori

2023/02/27 15:12

M1 Mac なら Homebrew は /opt/homebrew に入るはずですが…。ターミナルを Rosetta で動かしたりしましたか?
kabikira

2023/02/27 22:29 編集

動かしました! Homebrewをインストールする前に https://tech.naturalmindo.com/notwork_cocoapods/ このサイトの情報をみて ターミナルの「Rosettaを使用して開く」にチェックを入れる sudo gem install ffi というコマンドを実行しました
kabikira

2023/02/27 22:28

今は「Rosettaを使用して開く」にチェックを外してますが チェックを入れたときのターミナルを終了させないで使っていたかもしれないです Homebrewを消して再インストールするのがいいでしょうか?
hoshi-takanori

2023/02/27 23:46

それは古い情報で、Homebrew が M1 に対応した今となってはもはや有害ですね…。 Homebrew の消し方は https://github.com/homebrew/install#uninstall-homebrew に書いてありますが、Rosetta を使用して入れた場合、消す時も一時的に Rosetta をオンにした方がいいかも?
kabikira

2023/02/28 02:59

試してみます!ありがとうございます!
kabikira

2023/02/28 10:50

Cocoapadsインストールできました!! ありがとうございます!! ターミナルのRosetta をオンにして Homebrewアンインストール /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)" ターミナルのRosetta をオフにしてHomebrewインストール /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 実行 https://cly7796.net/blog/other/warning-is-displayed-when-installing-homebrew/ をみて ターミナルに出たコマンド実行 (echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/koalapanda/.zprofile eval "$(/opt/homebrew/bin/brew shellenv)" brew install cocoapods 実行しインストール setupでエラー ~ % pod setup /Library/Ruby/Site/2.6.0/rubygems.rb:263:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException) from /Library/Ruby/Site/2.6.0/rubygems.rb:282:in `activate_bin_path' from /usr/local/bin/pod:23:in `<main>' リストには入っている ~ % brew list ==> Formulae ca-certificates libyaml readline cocoapods openssl@1.1 ruby Rubyのバージョンはが上がってないようなので https://qiita.com/ryamate/items/e51c77fbabc2aec185fc ここのつづきからやった 3-3. 調査③ Rubyの調整 その2から 現在の安定版Ruby3.2.1 ~ % ruby -v ruby 3.2.1 (2023-02-08 revision 31819e82c8) [arm64-darwin21] r ~ % pod --version 1.11.3 % ~ % pod setup Setup completed プロジェクトにライブラリインストールできました!
guest

回答1

0

自己解決

hoshi-takanoriさんのコメントのおかげで解決できました。
私はターミナルをRosettaにしてHomebrewを入れてしまったため
ターミナルのRosetta をオンにして
Homebrewアンインストール

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

ターミナルのRosetta をオフにしてHomebrewインストール

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

実行

brew install cocoapods

setupでエラー

~ % pod setup /Library/Ruby/Site/2.6.0/rubygems.rb:263:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException) from /Library/Ruby/Site/2.6.0/rubygems.rb:282:in `activate_bin_path' from /usr/local/bin/pod:23:in `<main>'

Rubyのバージョンが上がってないようなので
https://qiita.com/ryamate/items/e51c77fbabc2aec185fchttps://qiita.com/ryamate/items/e51c77fbabc2aec185fc
ここの3-3. 調査③ Rubyの調整 その2からやりました

現在の安定版Rubyバージョンに変更するとCocoapads使えるようになりました。

投稿2023/02/28 11:02

編集2023/02/28 12:28
kabikira

総合スコア1

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問