はじめに
可奈ちゃんの 「諦めたくない!」 マジ泣いた1
nikkieです
macOSでFlutterの環境構築をする機会があったので、備忘のために手順を残します。
紆余曲折の末に、環境構築は成功しました🙌
目次
Flutter
ゆめみさん関係で聞いたことあるな〜くらいでした。
マルチプラットフォームってすごいですね。
FlutterでiOSアプリ開発する環境をmacOSに構築
環境構築を終えてから振り返ると以下の手順に沿っていたことになります。
Flutterの環境構築手順を求めている方は、まずこの公式ドキュメントを見るのをオススメします
(この記事の方法は紆余曲折しまくっており、参考にならないでしょう)
Flutter SDKのインストール
ダウンロードしてPATH
を通しました。
% flutter --version Flutter 3.22.0 • channel stable • https://github.com/flutter/flutter.git Framework • revision 5dcb86f68f (3 weeks ago) • 2024-05-09 07:39:20 -0500 Engine • revision f6344b75dc Tools • Dart 3.4.0 • DevTools 2.34.3
SDKをインストールするとflutter doctor
で状況を確認しながら進められるのがいいですね
Xcodeのインストール
進める中で、macOSもアップグレードした方がよさそうと分かり、まず実施しました。
Monterey (12) から Sonoma (14.5) へ
Xcodeは15.4をインストール
(iOS simulatorは17.5から選べます)
CocoaPodsのインストール
https://guides.cocoapods.org/using/getting-started.html#installation
% sudo gem install cocoapods
「macOSに同梱されてるRubyに直でインストールしていいの?」と思ったのですが2、
You can use a Ruby Version manager, however we recommend that you use the standard Ruby available on macOS unless you know what you're doing.
iOSやFlutterの開発でRubyの手順に詳しくない場合、CocoaPodsとしてはsudo
してシステムのRubyに入れてもらう手順を勧めているようです
% ruby --version ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23] % gem --version 3.0.3.1
バージョン不整合を解決する必要があり(gem
のエラーメッセージで案内されます)、以下のコマンドを実行した形になりました
% sudo gem install activesupport -v 6.1.7.7 % sudo gem install cocoapods
これでpod
コマンドが使えるようになってるんですね
% pod --version 1.15.2
しかしVS CodeでStart Debuggingできない...
VS CodeにFlutter Extensionを入れています。
今回は動かしたいソースコードがすでにある状況です。
iOS Simulatorを選択して「Start Debugging」するも、CocoaPods関連のエラー(VS Codeのdebug consoleにて確認)
Error: CocoaPods's specs repository is too out-of-date to satisfy dependencies. To update the CocoaPods specs, run: pod repo update
pod repo update
しても全く解決しません😫
ヒントになったのは以下記事
cd ios pod repo update pod update
pod repo update
ってiosディレクトリでやるものなのかと知り実行しました(この時点では上記エラーが出たまま)pod update
でPodfile.lock
が更新され、その状態なら「Start Debugging」が通って光明が見えました
参考にした資料
CocoaPodsのインストール時のエラーの対応の参考
Flutter, VSCode のアプリ開発環境を macOS Sonoma に構築する
その他
macOSアップデートがはさまったため、CocoaPodsが複数バージョン入っていたのが悪さをしていた事象もありました。
gem list
で出力したときに
cocoapods (1.15.2, 1.13.0)
これはsudo gem uninstall cocoapods
で一度全部消してから再度インストールして、混乱を整理しました
終わりに
FlutterでiOSアプリ開発の環境構築、紆余曲折の記でした。
iOSアプリもほとんど経験がありませんが、Flutter、Ruby(CocoaPods)と触ったことがほとんどないものが押し寄せてきて、なかなかにタフな環境構築でした。
flutter doctor
で問題箇所が洗い出されるのが道標のように感じられました。
初めての環境構築ということで大変な思いをしましたが、次にやるときは公式のドキュメントベースで今回よりもっとうまくやれるんじゃないかと思います(再掲しておきます)