Flutter2.10.0でちょっと遊ぶためにインストール
遊ぶための下準備、インストール
兎にも角にもflutter 2.10.0をインストール。
インストールしてからflutter docker
を実行すると、2つほど問題が見つかった。
Android toolchain というのと Android Studio ということで、両方Android関連ぽい。
Android Studioをinstallして再度flutter docker
を実行しても、もう1つは解決していない。
$ flutter doctor Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel stable, 2.10.0, on Microsoft Windows [Version 10.0.19043.1466], locale ja-JP) [!] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1) X cmdline-tools component is missing Run `path/to/sdkmanager --install "cmdline-tools;latest"` See https://developer.android.com/studio/command-line for more details. X Android license status unknown. Run `flutter doctor --android-licenses` to accept the SDK licenses. See https://flutter.dev/docs/get-started/install/windows#android-setup for more details. [√] Chrome - develop for the web [√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.2.5) [√] Android Studio (version 2021.1) [√] IntelliJ IDEA Ultimate Edition (version 2018.3) [√] IntelliJ IDEA Ultimate Edition (version 2019.3) [√] IntelliJ IDEA Ultimate Edition (version 2021.1) [√] Connected device (3 available) [√] HTTP Host Availability
Run path/to/sdkmanager --install "cmdline-tools;latest"
とは書いているが、sdkmanager --install "cmdline-tools;latest"
を実行しても下記エラーが発生する。
bash: sdkmanager: command not found
path/to/
配下じゃないので恐らく指しているものが違うのだが……どこのsdkmanagerを表現しているのだろう??pathに通っているものではないみたい。
$ where sdkmanager D:\xxxx\cmdline-tools\bin\sdkmanager.bat
結局わからなかったのでググったらQiitaの記事がヒット。助かる。
Flutter doctor cmdline-tools componentエラー対処 - Qiita
これを参考に、インストールしたAndroid Studioを起動してcmdline-tools
をinstallする。
Android license status unknown.
の箇所については書いてあるコマンドがそのまま実行できた。
flutter doctor --android-licenses
とりあえず動く環境の用意
Flutterのプロジェクトを作成する。
flutter create
でプロジェクトを作るらしい。
flutter create -h
の中にサンプルを作る方法が書いてあったのでまずはこれを作る。
# mysampleというフォルダでプロジェクトを作成 $ flutter create --sample=widgets.SingleChildScrollView.1 mysample
あとはIntelliJ IDEAやVS Codeなんかでこのプロジェクトを開く。
これで実行。 …少し時間を空けてChromeが立ち上がる。 (これはChromeと実際に表現されるけど、元々インストールしているChromeとは履歴情報なんかも共有していないみたいで、何なのだろう?)
めでたしめでたし……とはいかなかった。 Windows版が起動しなかった。 エラーメッセージは下記のようなもの。
ライブラリのコンピューターの種類 'x64' がターゲットのコンピューターの種類' x86' と競合しています
x86なんか入れた記憶はないが、恐らくUnityとか遊び用に入れた時に入ったのだろう。
上のflutter doctor
の結果にも表示されているが、Visual Studio - develop for Windows (Visual Studio Community 2019 16.2.5)
が競合しているようなので、折角だし最新のものを入れることにした。
Flutterは内部的にはC++がベースで動いているようなので対象はこんな感じにしてみた。どちらかは不要なのかもしれない。
最終的なflutter doctor
は下記のようになった。
$ flutter doctor Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel stable, 2.10.0, on Microsoft Windows [Version 10.0.19043.1526], locale ja-JP) [√] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1) [√] Chrome - develop for the web [√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.0.5) [√] Android Studio (version 2021.1) [√] IntelliJ IDEA Ultimate Edition (version 2018.3) [√] IntelliJ IDEA Ultimate Edition (version 2019.3) [√] IntelliJ IDEA Ultimate Edition (version 2021.1) [√] Connected device (3 available) [√] HTTP Host Availability • No issues found!
あとは端末を再起動して、再度実行する。が、残念ながらまたエラー発生。
CMake Error: Error: generator : Visual Studio 17 2022 Does not match the generator used previously: Visual Studio 16 2019 Either remove the CMakeCache.txt file and CMakeFiles directory or choose a different binary directory. Exception: Unable to generate build files
mysample/build/windows
配下のCMakeCache.txt
とCMakeFiles
フォルダを削除。
再度実行。やっと動いた。立ち上がるまでに結構時間かかるけど、hot reloadがあるので開発はしやすかな? Androidアプリ作ってみるか。