
No such module 'Flutter' / Framework 'Flutter' not found で詰みかけた時
数ヶ月ぶりにあるFlutterプロジェクトを起動しようとして、GitHubからCloneして
「よし、ビルドや!」と思った瞬間──
永久に上記タイトルの呪いが続き、詰みかけた。
AIさんには本当いろんな手順を掲示してもらったが、
わいは延々と無駄なことをしてたが、これは気づかない。
てっきり互換性の問題だと思って色々やったが、これは通るわけはない。
と言うことで、詰んだと思ってる諸兄の台パンが軽度で済むことを祈って忘備録。
2度とみたくないエラーメッセージ
/<保存先>/ios/Runner/AppDelegate.swift:1:8 No such module 'Flutter'
Framework 'Flutter' not found
Linker command failed with exit code 1 (use -v to see invocation)
再現手順 (step to reproduce)
最初の方は意識してやってなかったので正確かわからんが
・Step1. Githubから自分のProjectをクローン

・Finder で保存先を指定する
任意のフォルダーに保存。
・Android Studioで必要な修正を実施
Androidシムで動作OKまで確認し、iOSやるぞ。
・Runner.xcworkspace を開きビルド
はいはい、いつも通り

・エラー
あ〜やりやがった。
互換性かな、と思ってXcodeやPodのUpdateなど色々試すが、永久にエラーになり続ける。


この状況から抜け出せず色々やるが、、全部無駄だった。
理由はオチの通りなので。。
オチ (root cause)
違うファイルパスの Flutter Project の Runner.xcworkspace を起動していたため。。
どう言う理由かわからんが、上記のStep1でGithubをクローンしたあと、AndroidStudioでFlutterのコードを修正しAndroid で修正した時に、どうやらAndroid Studioのデフォルトの保存先に色々保存されるらしい。そっちの /ios/Runner.xcworkspaceを利用しないとダメみたい。
教訓
上記のような出るはずのないエラーが出たら、正しいフォルダパスを見てるか確認して欲しい。
特にわいはXcodeでクローンして、AndroidStudioで少し編集してから再度Xcodeでビルドと言う意味不明ムーブをしたので、Xcodeでクローンした方のフォルダーを開いてると永久に抜け出すことができない
やってみたこと
これらをやっても無駄だった。
🧨 エラー①(sqfliteとSDKのバージョン)
sqflite パッケージが必要とする Dart SDK バージョンと、Flutter SDK のバージョンが合ってなかったンゴ。
🔁 対応①(Flutter系コマンド)
flutter clean(何回もやった)
flutter pub get
flutter build ios -v
flutter run
多分このクリーンは何回もやる羽目になるはず。いちいちゼロからビルドするので時間泥棒や
🧨 エラー②(Androidビルド - Kotlin JVMターゲット不一致)
compileSdkVersion などが原因で jvmTarget 不一致エラーが出た。
🔁 対応②
android/app/build.gradle の compileOptions を JavaVersion.VERSION_17 に
kotlinOptions { jvmTarget = '17' } を追加
🧨 エラー③(CocoaPodsでのFirebaseバージョン競合)
Podfile.lock の Firebase バージョンと cloud_firestore の要求が食い違ってビルド爆死。
🔁 対応③
pod repo update を実行し CocoaPods の情報を最新に更新
🧨 エラー④(iOSビルド - Generated.xcconfig 不在)
Xcodeのビルドで Generated.xcconfig が見つからずエラー連発。
🔁 対応④
flutter clean
flutter pub get
flutter build ios --debug --verbose
~/Library/Developer/Xcode/DerivedData を完全削除
🧨 エラー⑤(iOSビルド - Flutter.framework not found)
Flutter.framework がリンカーで見つからず多数のプラグインが爆死(share_plus, sqflite等)。
🔁 対応⑤
DerivedData 削除
rm -rf Pods Podfile.lock
pod cache clean --all
pod deintegrate
pod install
必要なら ios/ を削除して flutter create . で再生成検討
🧨 エラー⑥(iOSビルド - .xcfilelist 読み込み失敗)
Xcodeで Pods-Runner-~.xcfilelist を読めずビルド失敗。
🔁 対応⑥
Runner.xcworkspace 削除 → pod install で再生成
🧨 エラー⑦(Generated.xcconfig 不在の再発 during pod install)
flutter pub get を忘れた状態で pod install → Generated.xcconfig missing エラー
🔁 対応⑦
必ず flutter pub get → pod install の順で実行することを徹底
🧨 エラー⑧(cloud_firestore デプロイメントターゲット問題)
cloud_firestore Pod が iOS 13.0 以上を要求してるのに platform が 12.0 以下だった
🔁 対応⑧
Podfile の platform :ios, '13.0' を明示
🧨 エラー⑨(firebase_auth の non-modular header 問題)
Firebase.h をモジュール外から読み込んで Include of non-modular header エラー連発。
🔁 対応⑨
use_modular_headers! をコメントアウト
Firebase, FirebaseAuth などに :modular_headers => false を個別指定
post_install に CLANG_ALLOW_NON_MODULAR_INCLUDES_IN_FRAMEWORK_MODULES = YES を追加
最終的に Xcode の Build Settings → Allow Non-modular Includes... = YES で突破🔥
🧨 エラー⑩(RubyGems パーミッション)
gem update --system が /opt/homebrew/... に書き込めず失敗。
🔁 対応⑩
sudo gem update --system 3.6.8 で権限つけて解決
集中力もなくなって雑魚いところでも爆死
🧠 雑感と反省
ネットで調べると、同じ問題を踏んだ諸兄がたくさんいて心強かったのは確かやが、
みんな「これをやってもダメ」ばっかり書くから
「結論を先に寄越せや!」
と失礼ながら思わざるを得ず🥺
というわけで、ワイはできるだけ結論を先に書いてみた。お役立ちすれば幸いです
