Skip to content

"Flutter/Flutter.h not found." on iOS. #16036

Closed

Description

@jeroen-meijer

Steps to Reproduce

Preface:

I'm on the flutter master channel and have run upgrade half an hour ago.
I've reinstalled flutter and cocoapods completely before and tried the fixes provided in #15437, #15532 and all other issues on GitHub looking like the problem I have. _

flutter create --template=plugin -i swift health_stats
cd health_stats/example

health_stats.zip

Logs

Run your application with flutter run and attach all the log output.

Launching lib/main.dart on iPhone 6 in debug mode...
Running Xcode clean...                                       0,9s
Starting Xcode build...
Xcode build done                                             1,1s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    === BUILD TARGET health_stats OF PROJECT Pods WITH CONFIGURATION Debug ===
    <module-includes>:1:9: note: in file included from <module-includes>:1:
    #import "Headers/health_stats-umbrella.h"
            ^
    /Users/jeroen/Projects/_flutter_experiments/health_stats/example/ios/Pods/Target Support Files/health_stats/health_stats-umbrella.h:13:9: note: in file included from /Users/jeroen/Projects/_flutter_experiments/health_stats/example/ios/Pods/Target Support Files/health_stats/health_stats-umbrella.h:13:
    #import "HealthStatsPlugin.h"
            ^
    /Users/jeroen/Projects/_flutter_experiments/health_stats/ios/Classes/HealthStatsPlugin.h:1:9: error: 'Flutter/Flutter.h' file not found
    #import <Flutter/Flutter.h>
            ^
    <unknown>:0: error: could not build Objective-C module 'health_stats'
Could not build the application for the simulator.
Error launching application on iPhone 6.

Run flutter analyze and attach any output of that command also.

Analyzing /Users/jeroen/Projects/_flutter_experiments/health_stats/example...
No issues found!
Ran in 5.7s

Flutter Doctor

Paste the output of running flutter doctor -v here.

[✓] Flutter (Channel master, v0.2.5-pre.60, on Mac OS X 10.13.3 17D102, locale nl-NL)
    • Flutter version 0.2.5-pre.60 at /Users/Jeroen/flutter
    • Framework revision 31049a5a73 (64 minutes ago), 2018-03-28 10:58:48 -0700
    • Engine revision dd6f46c485
    • Dart version 2.0.0-dev.41.0.flutter-2f68e82526

[✓] Android toolchain - develop for Android devices (Android SDK 26.0.3)
    • Android SDK at /Users/jeroen/Library/Developer/Xamarin/android-sdk-macosx
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-27, build-tools 26.0.3
    • ANDROID_HOME = /Users/jeroen/Library/Developer/Xamarin/android-sdk-macosx
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 9.3)
    • Xcode at /Applications/Xcode-beta.app/Contents/Developer
    • Xcode 9.3, Build version 9Q127n
    • ios-deploy 1.9.2
    • CocoaPods version 1.5.0.beta.1

[✓] Android Studio (version 3.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b08)

[✓] VS Code (version 1.21.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Dart Code extension version 2.11.1

[✓] Connected devices (1 available)
    • iPhone 6 • B93E29EC-05E0-4948-B369-BB8B2347823D • ios • iOS 11.3 (simulator)

• No issues found!

Additional information

Creating and running a normal project works fine:
flutter create regular
cd regular
flutter run

Launching lib/main.dart on iPhone 6 in debug mode...
Running Xcode clean...                                       0,9s
Starting Xcode build...
 ├─Assembling Flutter resources...                    3,4s
 └─Compiling, linking and signing...                  5,1s
Xcode build done                                             9,7s
Syncing files to device iPhone 6...                          2,0s

🔥  To hot reload your app on the fly, press "r". To restart the app entirely, press "R".
An Observatory debugger and profiler on iPhone 6 is available at: http://127.0.0.1:8100/
For a more detailed help message, press "h". To quit, press "q".

However when adding a dependency like path_provider:

...
dependencies:
  flutter:
    sdk: flutter
  path_provider: ^0.4.0 [ADDED THIS LINE]
...

and then flutter packages get,

[regular] flutter packages get
Running "flutter packages get" in regular...
exit code 0

flutter run produces this:

Launching lib/main.dart on iPhone 6 in debug mode...
Running pod install...                                       1,0s
Running Xcode clean...                                       0,9s
Starting Xcode build...
Xcode build done                                             1,4s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    === BUILD TARGET path_provider OF PROJECT Pods WITH CONFIGURATION Debug ===
    In file included from /Users/jeroen/.pub-cache/hosted/pub.dartlang.org/path_provider-0.4.0/ios/Classes/PathProviderPlugin.m:5:
    /Users/jeroen/.pub-cache/hosted/pub.dartlang.org/path_provider-0.4.0/ios/Classes/PathProviderPlugin.h:5:9: fatal error: 'Flutter/Flutter.h' file not found
    #import <Flutter/Flutter.h>
            ^~~~~~~~~~~~~~~~~~~
    1 error generated.
Could not build the application for the simulator.
Error launching application on iPhone 6.

I did not have path_provider version 0.4.0 in my dart packages folder before running the app, so it's a fresh copy.

I need to get this working a.s.a.p. since I need to make an app for our company soon.

Activity

  1. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    In the health_stats project, your example/ios/Podfile appears to be almost full day older than example/ios/Podfile.lock. Perhaps the former has been copied from somewhere? I believe the consequence of a Podfile older than Podfile.lock is that pod install isn't executed as part of flutter run. This is consistent with the log output at the start of your Logs section.

    Can I ask you to remove example/ios/Podfile.lock and retry flutter run in health_stats?

    (Meanwhile, I'll be trying to reproduce the error of the regular project.)

  2. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    Thank you very much for your speedy reply.

    I have made this project around an hour ago (IIRC), so everything is newly generated, so I don't know how the dates are that inconsistent.

    I have deleted the example/ios/Podfile.lock in the health_stats project and ran flutter run, to no avail, unfortunately.

    Launching lib/main.dart on iPhone 6 in debug mode...
    Running pod install...                                       1,0s
    Running Xcode clean...                                       0,9s
    Starting Xcode build...
    Xcode build done                                             1,2s
    Failed to build iOS app
    Error output from Xcode build:
    ↳
        ** BUILD FAILED **
    
    Xcode's output:
    ↳
        === BUILD TARGET health_stats OF PROJECT Pods WITH CONFIGURATION Debug ===
        <module-includes>:1:9: note: in file included from <module-includes>:1:
        #import "Headers/health_stats-umbrella.h"
                ^
        /Users/jeroen/Projects/_flutter_experiments/health_stats/example/ios/Pods/Target Support Files/health_stats/health_stats-umbrella.h:13:9: note: in file included from /Users/jeroen/Projects/_flutter_experiments/health_stats/example/ios/Pods/Target Support Files/health_stats/health_stats-umbrella.h:13:
        #import "HealthStatsPlugin.h"
                ^
        /Users/jeroen/Projects/_flutter_experiments/health_stats/ios/Classes/HealthStatsPlugin.h:1:9: error: 'Flutter/Flutter.h' file not found
        #import <Flutter/Flutter.h>
                ^
        <unknown>:0: error: could not build Objective-C module 'health_stats'
    Could not build the application for the simulator.
    Error launching application on iPhone 6.
    

    Edit: here is the new Podfile.lock

    Podfile.lock.zip

  3. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    You did get a Running pod install... line in your output now. OK, ruled that one out then.

    I could not reproduce the error you get in the regular project.

    Just noticed that your Cocoapods installation is 1.5.0.beta.1. Flutter tooling has not been tested with that version as far as I know. The regular project works for me with the path_provider dependency using Flutter master and Cocoapods 1.4.0.

  4. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    Ok, thanks for checking.

    I've uninstalled Cocoapods using gem and installed version 1.4.0 (using sudo gem install cocoapods -v 1.4.0) but sadly get the exact same output as before.

  5. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    Did you redo pod installation after the downgrade of Cocoapods? The health_stats project also works for me after deleting example/ios/Podfile.lock and example/ios/Pods/.

    And flutter clean.

  6. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    Well, after running pod install inside the example/ios folder, health_stats works!

    Sadly, doing the same thing for regular and running it still gives me this:

    Launching lib/main.dart on iPhone 6 in debug mode...
    Running Xcode clean...                                       0,8s
    Starting Xcode build...
    Xcode build done                                             1,1s
    Failed to build iOS app
    Error output from Xcode build:
    ↳
        ** BUILD FAILED **
    
    Xcode's output:
    ↳
        === BUILD TARGET path_provider OF PROJECT Pods WITH CONFIGURATION Debug ===
        In file included from /Users/jeroen/.pub-cache/hosted/pub.dartlang.org/path_provider-0.4.0/ios/Classes/PathProviderPlugin.m:5:
        /Users/jeroen/.pub-cache/hosted/pub.dartlang.org/path_provider-0.4.0/ios/Classes/PathProviderPlugin.h:5:9: fatal error: 'Flutter/Flutter.h' file not found
        #import <Flutter/Flutter.h>
                ^~~~~~~~~~~~~~~~~~~
        1 error generated.
    Could not build the application for the simulator.
    Error launching application on iPhone 6.
    

    I should mention that I got this error even before installing Cocoapods 1.5.0.beta.1.
    So these are two separate problems apparently.

    Edit:
    The log for pod install inside regluar:

    ~/Projects/_flutter_experiments/regular/ios > pod install

    Analyzing dependencies
    Fetching podspec for `Flutter` from `Pods/.symlinks/flutter/ios`
    Fetching podspec for `path_provider` from `Pods/.symlinks/plugins/path_provider-0.4.0/ios`
    Downloading dependencies
    Using Flutter (1.0.0)
    Using path_provider (0.0.1)
    Generating Pods project
    Integrating client project
    Pod installation complete! There are 2 dependencies from the Podfile and 2 total pods installed.
    
    [!] Automatically assigning platform `ios` with version `8.0` on target `Runner` because no platform was specified. Please specify a platform for this target in your Podfile. See `https://guides.cocoapods.org/syntax/podfile.html#platform`.
    
  7. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    Can I ask you to attach a zip of your regular project? I'm curious about what difference makes it fail for you and work for me.

  8. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    Of course, here you go:
    https://nofile.io/f/G91uVSR6HYO/regular.zip
    (File seems too big for GitHub.)

  9. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    Your Podfile in regular does not seem to contain the fix of #15437.

  10. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    What fix are you referring to?

    If you meant this workaround:

        target.headers_build_phase.files.each do |file|
          file.settings = { 'ATTRIBUTES' => ['Public'] }
        end
    

    I just added it, removed Podfile.lock, ran pod install in the ios folder and ran flutter run, but still get the same output.

  11. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    Sorry, my bad. That fix is relevant for Swift projects only.

  12. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    No problem. Very useful to know, though.

    Any other suggestions?

  13. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    No currently, I'm afraid. I cannot reproduce the error you get.

  14. jeroen-meijer commented on Mar 28, 2018

    @jeroen-meijer
    Author

    I understand.

    I want to try to reinstall everything I can to see if that fixes anything.
    Do you perhaps have a list of tools and programs that flutter uses so I can uninstall and reinstall it all, including dependencies that get installed on the side?

    For example:

    - flutter
    - cocoapods
    ...
    
  15. mravn-google commented on Mar 28, 2018

    @mravn-google
    Contributor

    flutter doctor -v should give you some indication. For iOS, mine says

    [✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 9.2, Build version 9C40b
        • ios-deploy 1.9.2
        • CocoaPods version 1.4.0
    

    One might hope that it is enough to recreate the regular project now that you've downgraded your Cocoapods.

  16. 135 remaining items

  17. AlanSGC commented on Dec 7, 2018

    @AlanSGC

    Hi, @Pergius , the workaround that worked for me was also described at this link (#24428 (comment)).
    When copying the files to the ios-release folder, flutter build ios worked.
    However, I believe there is a bug that needs to be fixed.

  18. malibayram commented on Dec 21, 2018

    @malibayram

    this is the best solution
    #24428

  19. azhagarsparks commented on Mar 28, 2019

    @azhagarsparks

    I had a same problem. Esys-share.h file not found.. please help me to resolve this iisue

  20. meems1996 commented on Apr 13, 2019

    @meems1996

    For anyone who also has issues with the Flutter.h not found, check your Flutter version. I had the 1.4 Flutter version and uninstalled it and then installed the stable version (1.2) and it worked.

  21. JustDoI commented on May 8, 2019

    @JustDoI

    For anyone who also has issues with the Flutter.h not found, check your Flutter version. I had the 1.4 Flutter version and uninstalled it and then installed the stable version (1.2) and it worked.

    Thanks,this works for me.

  22. chris-wickens commented on May 8, 2019

    @chris-wickens

    I'm experiencing this on one of our build machines. I've tried reinstalling Flutter, switching to the stable channel, making sure cocoapods is the same version as on the working machines and pretty much every other solution suggested. The only temporary success I've had is with yxfmlbb's fix in #24428. The Flutter.framework header files are replaced with aliases that lead nowhere when I run build --release, and after that the iOS build fails with Flutter.h file not found.

    I can only assume I haven't reinstalled Flutter completely. What else should I be doing besides deleting the Flutter installation directory?

    Edit: this appears to be some weird Jenkins issue as running the same commands from terminal does not overwrite the header files with shortcuts.

  23. corymalcolmtaylor commented on Jun 7, 2019

    @corymalcolmtaylor

    I started getting this error after doing a flutter update and adding shared_preferences to my project. I just tried deleting all the shared_preferences stuff, even from pubspec.yaml, and deleting the ios folder and running "flutter create ." and now when I try to build/run on the ios simulator I get:

    Error output from Xcode build:
    ↳
        ** BUILD FAILED **
    Xcode's output:
    ↳
        In file included from /Users/me/Dev/flutter_projects/flutter_course/ios/Runner/GeneratedPluginRegistrant.m:5:
        /Users/me/Dev/flutter_projects/flutter_course/ios/Runner/GeneratedPluginRegistrant.h:8:9: fatal error: 'Flutter/Flutter.h' file not found
        #import <Flutter/Flutter.h>
                ^~~~~~~~~~~~~~~~~~~
        1 error generated.
    Could not build the application for the simulator.
    Error launching application on iPhone Xʀ.
    Exited (sigterm)
    

    and in case it helps:

    flutter doctor -v
    [✓] Flutter (Channel stable, v1.5.4-hotfix.2, on Mac OS X 10.14.5 18F132, locale en-CA)
        • Flutter version 1.5.4-hotfix.2 at /Users/me/dev/flutter
        • Framework revision 7a4c33425d (6 weeks ago), 2019-04-29 11:05:24 -0700
        • Engine revision 52c7a1e849
        • Dart version 2.3.0 (build 2.3.0-dev.0.5 a1668566e5)
    
     
    [✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
        • Android SDK at /Volumes/macex/androidSDK
        • Android NDK location not configured (optional; useful for native profiling support)
        • Platform android-28, build-tools 28.0.3
        • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
        • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b01)
        • All Android licenses accepted.
    
    [✓] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
        • Xcode at /Applications/Xcode.app/Contents/Developer
        • Xcode 10.2.1, Build version 10E1001
        • ios-deploy 1.9.4
        • CocoaPods version 1.7.1
    
  24. haneensaadeh1994 commented on Sep 16, 2019

    @haneensaadeh1994

    uncheck these two checkboxes when you create a new flutter project, it works for me.
    WhatsApp Image 2019-09-16 at 5 56 16 AM

  25. jeantuffier commented on Dec 20, 2019

    @jeantuffier

    Just run into the same problem. I removed the current pod files and pod folder I had, re-installed cocoapods, re run the app, and the issue was solved

  26. kavinda1995 commented on Dec 23, 2019

    @kavinda1995

    For me this was solved by editing podfile as mentioned by this #10654 (comment) and change the xcode's build system to legacy.

  27. anysunflower commented on Mar 16, 2020

    @anysunflower

    I solved the problem by flutter create an new project and copy the key code.

    mypod --versionis 1.6.0

    I use the flutter channel stable v1.12.13+hotfix.6

  28. radiKal07 commented on Mar 17, 2020

    @radiKal07

    I created a new app with flutter create my_app, deleted everything from ios/Flutter in my own app and copied everything from my_app/ios/Flutter back again in my own app. It worked :/

  29. lock commented on Apr 2, 2020

    @lock

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  30. locked and limited conversation to collaborators on Apr 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions