プログラミングスクール最大70%OFF! ←クリックして見に行く

【Mac】sudo gem install cocoapodsしたら「extconf failed, exit code 1」になる

【Mac】sudo gem install cocoapodsしたら「extconf failed, exit code 1」になる

Flutterの環境構築中にCocoapodsをインストールしようとしたら出たエラー解消方法の備忘録_φ(・_・ )

発生したエラー

extconf failed, exit code 1

翻訳

extconf 失敗しました、終了コード 1

原因

翻訳だけでは意味わからんので、
調べてみたところ以下の3つが考えられるそうです。
・Ruby のバージョンが古い。
・CocoaPods のバージョンが古い。
・CocoaPodsのFormulとCaskが競合している。
・CocoaPods の依存関係がインストールされていない。

解決手順

・それぞれの手順を踏む前にHomebrewが最新バージョンにアップデートされているか確認

brew update

Rubyアップデート手順

・Rubyの最新バージョンをインストール(執筆時点で最新)

brew install ruby@3.1

・Rubyのバージョンを確認

ruby -v

ここで最新になっていればOKです!

CocoaPods のバージョンが古い。

以下コマンドでバージョンアップ

brew upgrade cocoapods

CocoaPodsのFormulaとCaskが競合している。

・どこかのサイトに基本的にどちらかをインストールすれば片方は削除されるとあったのですが、あまり信じられないのでとりあえずどちらもアンインストールしてしまう。
Formulaアンインストールコマンド

brew uninstall cocoapods

Caskアンインストールコマンド

brew uninstall --cask cocoapods
Attention

CocoaPods をアンインストールすると、CocoaPods によってインストールされたライブラリやツールもアンインストールされます。

CocoaPods の依存関係がインストールされていない。

依存関係をインストールするコマンド

brew install readline libyaml openssl readline-devel libyaml-devel openssl-devel

最後に

そして最後にこのコマンドでインストール!

sudo gem install cocoapods

M1,M2チップの場合

Apple siliconの場合は以下の手順を踏まないと解消しないかもしれません。
・Finderからターミナルを右クリック>情報の順で開き、ロゼッタを使って開くをチェック

・以下コマンドを実行

sudo gem install ffi

参考サイト

https://qiita.com/Ficus/items/bdef5c2b504d7a4008fb
https://qiita.com/MachonglishproK/items/c0434a75f8eae556764b
https://www.delftstack.com/ja/howto/ruby/update-ruby-version-in-macos/

Catalina で Cocoapods のインストール

Macカテゴリの最新記事