LoginSignup
5
1

More than 1 year has passed since last update.

Flutterのupgradeをしたら「CocoaPods installed but not working.」で苦戦した話

Last updated at Posted at 2022-01-13

概要

Flutterを利用してiOSアプリを作成していたのだが、高解像度の画像をImage.networkで取得して表示するので、ページの読み込みに時間がかかっていた。
そこで、cached_network_imageをpubspec.yamlに記述してflutter pub getした。
画像の処理を書き換えて、いざflutter runすると、以下のようなエラーが発生した。
image.png
flutter doctorを実行
image.png
どうやらCocoaPodsがおかしいみたいだ。
installしているのにbrokenやらnot workingやら、内心「ハ・・・?」って感じ。

試したこと

CocoaPodsの再インストール

エラーにCocoaPods Guidesを参照してre-installしろとご丁寧に書いてある。
言われるがままに実行してみる。

$ sudo gem install cocoapods

変化がなかったので、一度アンインストールして入れ直す。

$ sudo gem uninstall cocoapods && sudo gem install cocoapods

flutter doctorしてみたが、これも同じエラーが返された。ビルドも失敗。

再起動

再起動後、flutter doctorしたが、変化なし。

brewでCocoaPodsをインストール

まずは、既存のCocoaPodsをアンインストールする。

$ sudo gem uninstall cocoapods

次に、brewでインストールしてみた。

$ brew install cocoapods

flutter doctorしたが、変化なし。

解決策

CocoaPodsはRubyで動いているので、Rubyバージョンを上げることによって解決した。
今回は、rbenvを用いてアップグレードした。

$ brew install rbenv

その後、バージョン一覧を取得

$ rbenv install --list
2.6.9
2.7.5
3.0.3
3.1.0
jruby-9.3.2.0
mruby-3.0.0
rbx-5.0
truffleruby-21.3.0
truffleruby+graalvm-21.3.0

最新版をインストールする。
現時点(2022/01/13)での最新版は3.1.0
本体にインストールされていたのは2.6.8だった。逆になんで今まで動いてたんだ...?

$ rbenv install 3.1.0
$ rbenv global 3.1.0
$ rbenv init

# Load rbenv automatically by appending
# the following to ~/.zshrc:

eval "$(rbenv init -)"

次に、上記のeval "$(rbenv init -)"を、~/.zshrcに追加した。
最後に、source ~/.zshrcをして、flutter doctorを実行すると、正常に動作した。

一日中ゴニョゴニョしてしまったので、忘備録として。

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1