pod installが失敗する
今日M1 Maxを搭載したMacBook Pro 16インチがようやく届いたので、嬉々としてpod installをしたら失敗しました。
cocoapodsもFFIも問題なくインストールできているのに、いざpod installしようとすると謎エラーを吐いて死んでいるという状況でした。
現状多くのサイトでは、FFIがApple Silicon上でうまく動かないことから
- TerminalでRosettaを使うように指定する方法
- arch -x86_64 pod installをしてcocoapodsを再インストールする方法
の2種類が紹介されていますが、いずれも後方互換を使った消極的な解決方法です。
しかしここで紹介する方法は根本からこの問題を解決します。
1. Rubyを最新バージョンに更新する
デフォルトでインストールされているRubyは2.6.8という古いバージョンです。
そのためRubyをアップデートします。
$ brew install ruby
で最新版のRubyをインストールしてください。
$ ruby -v
ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin21]
グローバルに入れたくない人はrbenvを使ってください。(でもARM互換の問題で動かないこともあるらしい?)
2022年2月9日時点では3.1.0がインストールされます。
2. cocoapodsのバージョンを指定してインストール
$ sudo gem install -n /usr/local/bin cocoapods -v 1.11.2
Successfully installed cocoapods-1.11.2
Parsing documentation for cocoapods-1.11.2
Done installing documentation for cocoapods after 0 seconds
1 gem installed
最新のバージョンはこちらから確認することができます。
3. pod install
$ pod install
Analyzing dependencies
Downloading dependencies
Installing Capacitor (3.0.0)
Installing CapacitorCordova (3.0.0)
Generating Pods project
Integrating client project
Pod installation complete! There are 2 dependencies from the Podfile and 2 total pods installed.
$
これでM1チップでも問題なくpod installが動くようになりました。
メッセージはIonicのプロジェクトなのでこのような出力がされています。
とりあえず動いたのでめでたしめでたし。
Ionicのサンプルプログラムのビルドエラーも解決して、無事エミュ上で動作確認が出来ました。
というかMac届いた日に書いた記事がトラブルシューティングかよ。
追記
Twitterで検索したら
$ brew install cocoapods
で治ったという人もいた。