Skip to content

Flutter iOS build errorFlutter iOS build fails at pod install

You run flutter run or flutter build ios and it stops while running pod install, often after upgrading Flutter or a plugin such as FlutterFire. CocoaPods couldn’t settle on a set of native library versions that fit together. Here’s what usually blocks it, in the CocoaPods, Flutter and Firebase docs’ own words, or hand it over at a fixed price.

Short answer

Read the CocoaPods output for the pod it names. If it says it could not find compatible versions, the Podfile.lock is holding an old version: run pod update with that pod’s name inside the ios folder. If it says a pod needs a higher minimum deployment target, raise platform :ios in ios/Podfile. Update CocoaPods itself if it’s old. If the pod is a Firebase one, note that new Firebase versions aren’t published to CocoaPods after October 2026, and Flutter 3.44 and later use Swift Package Manager by default.

Why pod install fails, most common first

  1. 01

    Podfile.lock pins an older version

    “When you run pod install, it only resolves dependencies for pods that are not already listed in the Podfile.lock.” CocoaPods, pod install vs. pod update

    After a plugin upgrade, the plugin asks for a newer native pod than the one recorded in ios/Podfile.lock, and pod install won’t move a locked pod on its own. Update just the pod CocoaPods names, then commit the new lock file once the build passes.

    cd ios
    pod update PODNAME   # the pod named in the error
    cd ..
    flutter run
  2. 02

    The iOS deployment target is too low

    If the output says a pod required a higher minimum deployment target, a plugin now needs a newer iOS version than your app declares. Set platform :ios in ios/Podfile to at least that version (uncomment the line if needed), and match Minimum Deployments on the Runner target in Xcode.

    # ios/Podfile
    platform :ios, '15.0'
  3. 03

    CocoaPods itself is out of date or missing

    “To support Flutter plugins that use native iOS or macOS code, install the latest version of CocoaPods.” Flutter, Set up iOS development

    Flutter’s docs say to install the latest CocoaPods. Check your version with pod --version and update it the way you installed it (Homebrew or RubyGems).

  4. 04

    A Firebase pod has no newer CocoaPods version

    “Firebase 12 is the final major version published to CocoaPods, and Firebase will stop publishing new versions to CocoaPods in October 2026.” Firebase, Migrate from CocoaPods

    New Firebase versions won’t be published to CocoaPods after October 2026, so a FlutterFire upgrade may expect a Firebase Apple SDK that CocoaPods doesn’t have. As of Flutter 3.44, Swift Package Manager is on by default and upgrading Flutter adds it to your project. If you turned it off earlier, turn it back on with the command below. Plugins that don’t support it yet still install through CocoaPods.

    flutter config --enable-swift-package-manager

Checked against the vendor’s docs on : CocoaPods guides: pod install vs. pod update; Flutter docs: Set up iOS development; Flutter docs: Swift Package Manager for app developers; Firebase docs: Migrate from CocoaPods.

Rather hand it over?

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

Related: Flutter iOS build failed after an upgrade: the full guide · Firebase App Check blocking requests · App Store Guideline 2.1 rejection

Questions

More on this error

Should I just delete Podfile.lock and the Pods folder?

It often works, because both are regenerated, but every pod then re-resolves and you can get newer versions than you tested. Try pod update on the named pod first. If you do delete them, review the new Podfile.lock and commit it once the build passes.

What’s the difference between pod install and pod update?

pod install keeps every pod already in Podfile.lock at its locked version and only resolves new ones. pod update with a pod name ignores the lock for that pod and moves it to the newest version your Podfile allows. Use pod install day to day, and pod update only for the pod an error names.

Do I still need CocoaPods if I turn on Swift Package Manager?

Usually yes, for now. Flutter keeps CocoaPods in maintenance mode and falls back to it for any plugin that doesn’t support Swift Package Manager yet. The CocoaPods registry becomes read-only on December 2, 2026, so expect plugins to move over and keep CocoaPods installed until yours have.

Can you fix it for me?

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way.

A different error?

Describe it and get a written quote

Send the error and what you were doing. You get a written scope, a fixed price and a timeline; we reply by email, usually within one business day.