Flutter: "Flutter/Flutter.h introuvable." sur iOS.

Créé le 28 mars 2018  ·  157Commentaires  ·  Source: flutter/flutter

Étapes pour reproduire

Préface:

Je suis sur la chaîne flutter master et j'ai couru upgrade une demi-heure.
J'ai déjà complètement réinstallé Flutter et Cocopods et essayé les correctifs fournis dans #15437, #15532 et tous les autres problèmes sur GitHub ressemblant au problème que j'ai. _

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

statistiques_santé.zip

Journaux

_Exécutez votre application avec flutter run et joignez toute la sortie du journal._

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.

_Exécutez flutter analyze et attachez également toute sortie de cette commande._

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

Docteur Flutter

_Collez le résultat de l'exécution de flutter doctor -v ici._

[✓] 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!

Information additionnelle

La création et l'exécution d'un projet normal fonctionnent correctement :
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".

Cependant lors de l'ajout d'une dépendance comme path_provider :

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

puis flutter packages get ,

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

flutter run produit ceci :

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.

Je n'avais pas la version path_provider 0.4.0 dans mon dossier de packages de fléchettes avant d'exécuter l'application, il s'agit donc d'une nouvelle copie.

Je dois le faire fonctionner dès que possible car je dois bientôt créer une application pour notre entreprise.

Commentaire le plus utile

@miguelpruivo Copiez le Podfile adapté à votre projet du maître Flutter vers le ios/Podfile de votre projet et supprimez ios/Podfile.lock . Utilisez la version ObjC, si votre projet Flutter n'a pas été créé avec -i swift .

Tous les 157 commentaires

Dans le projet health_stats , votre example/ios/Podfile semble avoir presque une journée entière de plus de example/ios/Podfile.lock . Peut-être que le premier a été copié de quelque part ? Je crois que la conséquence d'un Podfile plus ancien que Podfile.lock est que pod install n'est pas exécuté dans le cadre de flutter run . Ceci est cohérent avec la sortie du journal au début de votre section Journaux.

Puis-je vous demander de supprimer example/ios/Podfile.lock et de réessayer flutter run dans health_stats ?

(En attendant, je vais essayer de reproduire l'erreur du projet regular .)

Merci beaucoup pour votre réponse rapide.

J'ai réalisé ce projet il y a environ une heure (IIRC), donc tout est nouvellement généré, donc je ne sais pas en quoi les dates sont si incohérentes.

J'ai supprimé le example/ios/Podfile.lock dans le projet health_stats et exécuté flutter run , en vain, malheureusement.

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 : voici le nouveau Podfile.lock

Podfile.lock.zip

Vous avez maintenant une ligne Running pod install... dans votre sortie. OK, a exclu celui-là alors.

Je n'ai pas pu reproduire l'erreur que vous obtenez dans le projet regular .

Je viens de remarquer que votre installation Cocoapods est 1.5.0.beta.1. L'outillage Flutter n'a pas été testé avec cette version pour autant que je sache. Le projet regular fonctionne pour moi avec la dépendance path_provider utilisant Flutter master et Cocoapods 1.4.0.

D'accord, merci d'avoir vérifié.

J'ai désinstallé Cocoapods à l'aide de gem et installé la version 1.4.0 (à l'aide de sudo gem install cocoapods -v 1.4.0 ) mais j'obtiens malheureusement exactement le même résultat qu'avant.

Avez-vous refait l'installation des pods après le downgrade des Cocoapods ? Le projet health_stats fonctionne également pour moi après avoir supprimé example/ios/Podfile.lock et example/ios/Pods/ .

Et flutter clean .

Eh bien, après avoir exécuté pod install dans le dossier example/ios , health_stats fonctionne !

Malheureusement, faire la même chose pour regular et l'exécuter me donne toujours ceci :

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.

Je dois mentionner que j'ai eu cette erreur avant même d'installer Cocoapods 1.5.0.beta.1.
Ce sont donc apparemment deux problèmes distincts.

Éditer:
Le journal pour pod install intérieur de 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`.

Puis-je vous demander de joindre un zip de votre projet regular ? Je suis curieux de savoir quelle différence cela fait échouer pour vous et travailler pour moi.

Bien sûr, voilà :
https://nofile.io/f/G91uVSR6HYO/regular.zip
(Le fichier semble trop volumineux pour GitHub.)

Votre Podfile dans regular ne semble pas contenir le correctif de #15437.

De quelle correction parles-tu ?

Si vous vouliez dire cette solution de contournement :

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

Je viens de l'ajouter, de supprimer Podfile.lock , d'exécuter pod install dans le dossier ios et d'exécuter flutter run , mais j'obtiens toujours le même résultat.

Désolé mon mauvais. Ce correctif n'est pertinent que pour les projets Swift.

Aucun problème. Très utile à savoir, cependant.

D'autres suggestions?

Non pour le moment, j'en ai peur. Je ne peux pas reproduire l'erreur que vous obtenez.

Je comprends.

Je veux essayer de réinstaller tout ce que je peux pour voir si cela résout quelque chose.
Avez-vous peut-être une liste d'outils et de programmes que Flutter utilise pour que je puisse tout désinstaller et tout réinstaller, y compris les dépendances qui sont installées sur le côté ?

Par exemple:

- flutter
- cocoapods
...

flutter doctor -v devrait vous donner une indication. Pour iOS, le mien dit

[✓] 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

On pourrait espérer qu'il suffira de recréer le projet regular maintenant que vous avez rétrogradé vos Cocoapods.

Je reçois la même erreur :

Launching lib/main.dart on iPhone X in debug mode...
Running Xcode clean...                                       1.3s
Starting Xcode build...
Xcode build done                                             1.5s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    === BUILD TARGET audioplayer OF PROJECT Pods WITH CONFIGURATION Debug ===
    In file included from /Users/dlutton/.pub-cache/hosted/pub.dartlang.org/audioplayer-0.4.0/ios/Classes/AudioplayerPlugin.m:1:
    /Users/dlutton/.pub-cache/hosted/pub.dartlang.org/audioplayer-0.4.0/ios/Classes/AudioplayerPlugin.h:1: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.

D'accord, le problème était lié à l'utilisation de la version bêta de Cocopods. Cela a fonctionné après le déclassement.

Merci pour le rapport. Malheureusement, je suis également sur 1.4.0 mais j'obtiens toujours cette erreur. Quand je serai à la maison, j'essaierai de voir ce que je peux faire.

@0916174
Moi-même et une autre personne sur l'application de chat flutter gitter avons eu le même problème lorsque nous utilisions la version bêta de Cocopods. Nous sommes tous les deux passés à la version 1.4 -> supprimé le fichier Podfile.lock -> supprimé le répertoire pods -> exécuté flutter clean -> exécuté pod install -> flutter run a fonctionné pour nous deux après avoir effectué ces étapes.

Merci pour la suggestion. J'ai essayé ça à l'instant. Cela n'a pas non plus fonctionné pour moi. Je cherche à faire une réinstallation complète de Mac, mais je n'ai vraiment pas hâte et je veux l'éviter à tout prix.

Je rencontre un problème similaire sur mon exemple de projet :

Launching lib/main.dart on iPhone X in debug mode...
Running Xcode clean...                                       1.2s
Starting Xcode build...
Xcode build done                                             2.7s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    In file included from .../.pub-cache/hosted/pub.dartlang.org/video_player-0.3.0/ios/Classes/VideoPlayerPlugin.m:5:
    .../.pub-cache/hosted/pub.dartlang.org/video_player-0.3.0/ios/Classes/VideoPlayerPlugin.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 X.

docteur -v sortie :

[✓] Flutter (Channel dev, v0.2.4, on Mac OS X 10.13.3 17D47, locale en-US)
    • Flutter version 0.2.4 at .../tools/flutter/flutter
    • Framework revision 3352a3fb48 (2 weeks ago), 2018-03-20 19:30:06 +0100
    • Engine revision 6280adbfb1
    • Dart version 2.0.0-dev.39.0.flutter-06949dc985
...
✓] iOS toolchain - develop for iOS devices (Xcode 9.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.3, Build version 9E145
    • ios-deploy 1.9.2
    • CocoaPods version 1.4.0

essayé toutes les étapes mentionnées ci-dessus.

Je viens d'essayer et j'ai eu un problème similaire sur un tout nouveau projet créé - même lorsque j'ai essayé rapide comme option de langue -i

La seule différence que je vois est le canal/la version Flutter.

[✓] Flutter (Channel beta, v0.2.3, on Mac OS X 10.13.4 17E199, locale en-US)
    • Flutter version 0.2.3 at /Users/dlutton/flutter/flutter
    • Framework revision 5a58b36e36 (3 weeks ago), 2018-03-13 13:20:13 -0700
    • Engine revision e61bb9ac3a
    • Dart version 2.0.0-dev.35.flutter-290c576264

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

Je l'ai corrigé en supprimant la dépendance de pubspec.yaml -> exécutez pod update -> en ajoutant à nouveau la dépendance -> exécutez pod update

J'ai changé de canal en bêta sur flutter et cela fonctionne bien.

Je suis capable de reproduire l'erreur de manière cohérente en utilisant Cocoapods 1.5.0 (nouvellement publié) et des projets Flutter fraîchement créés (à partir de Flutter master).

Il semble que Cocoapods 1.5.0 traite les liens symboliques différemment de certaines versions antérieures, ce qui conduit à une situation où le pod Flutter est effectivement vide à l'intérieur du projet Xcode.

Le correctif de #16273 semble résoudre le problème. Vous pouvez apporter cette modification manuellement au ios/Podfile dans votre projet existant, puis supprimer ios/Podfile.lock et ios/Pods/ .

J'ai testé que les Podfiles modifiés fonctionnent à la fois avec Cocoapods 1.4.0 et Cocoapods 1.5.0. Jusqu'à présent, je n'ai pas pu reproduire le problème avec le premier.

Merci pour cette proposition.
Cocopods complètement désinstallé et exécuté brew install cocoapods . Il a installé 1.5.0 comme prévu. J'ai exécuté pod setup , flutter channel master , flutter upgrade et j'ai créé un nouveau projet, ajouté la dépendance path_provider comme avant et l'ai exécuté. Obtenez toujours le même résultat.

Éditer

J'ai remarqué ceci dans la sortie pour l'exécution de pod update dans le dossier ios :

...
Analyzing dependencies
Fetching podspec for `Flutter` from `Pods/.symlinks/flutter/ios`
Fetching podspec for `path_provider` from `Pods/.symlinks/plugins/path_provider/ios`
Downloading dependencies
Using Flutter (1.0.0)
Using path_provider (0.0.1)
...

Ces numéros de version pour Flutter et path_provider corrects ? La version de path_provider ne devrait-elle pas être 0.4.0 comme je l'ai défini dans le fichier pubspec.yaml ?

Les plugins Flutter n'utilisent pas vraiment les versions Pod, ils restent donc tous à 0,0.1 ou autre.

La mise à jour de Flutter ne vous donnera pas un nouveau ios/Podfile , car l'outil Flutter ne l'écrase pas, s'il existe déjà. Vous devez le modifier manuellement avec les modifications de #16273, ou le supprimer, après quoi flutter run le recréera. Vous devrez peut-être supprimer ios/Podfile.lock et ios/Pods avant d'exécuter flutter run .

Edit : désolé, j'ai raté l'endroit où vous écrivez "fait un nouveau projet".

@ 0916174 Je ne peux pas reproduire avec un maître Flutter fraîchement mis à jour (y compris #16273).

$ flutter --version
Flutter 0.2.10-pre.28 • channel master • [email protected]:flutter/flutter.git
Framework • revision d0c0426007 (2 hours ago) • 2018-04-05 14:06:00 -0700
Engine • revision be070599a3
Tools • Dart 2.0.0-dev.46.0.flutter-3e6b8717fe
$ git log
commit d0c0426007c0657703e5a066bf235b06de9894ee (HEAD -> master, upstream/master)
Author: Siva <[email protected]>
Date:   Thu Apr 5 14:06:00 2018 -0700

    Roll engine to version be070599a30413bd203f2d77d2179220c5569c08 (#16264)

    * Roll engine to version be070599a30413bd203f2d77d2179220c5569c08
    (includes a roll of dart to version 3e6b8717fedce5cc28a21616f4591683c211f752

commit 06b208f3535af13286efc34ddd83621f4f20c907
Author: Mikkel Nygaard Ravn <[email protected]>
Date:   Thu Apr 5 22:47:03 2018 +0200

    Make Podfiles work with Cocoapods 1.5.0 (#16273)

Étrange. Lorsque vous créez votre nouveau projet, utilisez-vous un dossier inexistant ? L'outillage Flutter n'écrase pas le contenu de l'ancien projet.

Oui, j'ai fait un nouveau projet appelé newregular . Je n'ai jamais fait de projet avec ce nom.

$ flutter --version
Flutter 0.2.10-pre.28 • channel master • https://github.com/flutter/flutter.git
Framework • revision d0c0426007 (2 hours ago) • 2018-04-05 14:06:00 -0700
Engine • revision be070599a3
$ git log
commit d0c0426007c0657703e5a066bf235b06de9894ee (HEAD -> master, origin/master,
origin/HEAD)
Author: Siva <[email protected]>
Date:   Thu Apr 5 14:06:00 2018 -0700

    Roll engine to version be070599a30413bd203f2d77d2179220c5569c08 (#16264)

    * Roll engine to version be070599a30413bd203f2d77d2179220c5569c08
    (includes a roll of dart to version 3e6b8717fedce5cc28a21616f4591683c211f752

commit 06b208f3535af13286efc34ddd83621f4f20c907
Author: Mikkel Nygaard Ravn <[email protected]>
Date:   Thu Apr 5 22:47:03 2018 +0200

    Make Podfiles work with Cocoapods 1.5.0 (#16273)

@ 0916174 Je viens de réaliser que vous utilisez une version plus récente de Xcode que moi --- Je suis sur Xcode 9.2 (9C40B).

Je vais mettre à jour et voir si cela change quelque chose pour moi.

Je viens de télécharger et d'installer Xcode 9.3. Fonctionne toujours bien pour moi de créer un nouveau projet Flutter avec master, d'ajouter la dépendance path_provider , puis flutter run pour iOS. @ 0916174 La version de construction de mon Xcode est 9E145 qui est différente de la vôtre.

Réouvert, nous devons encore découvrir pourquoi cela ne fonctionne pas pour @0916174.

J'ai une erreur identique ou très similaire.
```Échec de la création de l'application iOS
Sortie d'erreur de la compilation Xcode :
??
* ÉCHEC DE CONSTRUCTION *

La sortie de Xcode :
??
=== BUILD TARGET firebase_auth OF PROJECT Pods AVEC CONFIGURATION Débogage ===
Dans le fichier inclus dans /Users/username/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_database-0.0.12/ios/Classes/FirebaseDatabasePlugin.m:5 :
/Users/username/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_database-0.0.12/ios/Classes/FirebaseDatabasePlugin.h:5:9 : erreur fatale : le fichier 'Flutter/Flutter.h' n'est pas trouvé
#importer
```
J'ai l'erreur de manquer Flutter/Flutter.h pour chaque plugin
Cette erreur apparaît après que j'ai changé d'ordinateur pour le développement, donc le projet était en ligne alors que j'utilisais l'appareil précédent. Sur le nouveau, j'ai effectué l'installation complète de Flutter sdk et j'ai obtenu cela lorsque j'ai essayé d'exécuter le projet.
Mais j'ai essayé de copier https://github.com/flutter/friendlychat-steps/tree/master/full_steps et cela fonctionne bien

C'est la même erreur (juste une dépendance différente).
C'est donc une machine spécifique, ou plutôt quelque chose que votre nouvelle machine et la mienne ont en commun qui crée ce problème.

On dirait que c'est un problème avec les cocopodes https://github.com/CocoaPods/CocoaPods/issues/7594

Ok, on dirait que j'ai résolu ça. Comme il s'agit d'un problème avec les cocopodes lui-même, je viens de supprimer les cocopodes de ma machine et d'installer la version 1.4 avec gem
sudo gem install cocoapods -v 1.4
puis mettez à jour les pods dans le dossier ios/
cd ios
pod update
après cela, mon projet prend vie sur simulateur

@Zmeu213 Puis-je demander quelle version, y compris la version de build, de Xcode utilisez-vous ?

@mravn-google, bien sûr que c'est
xcode version 9.3 (9E145)
Flutter 0.2.9 • développement de canal • https://github.com/flutter/flutter.git
Framework • révision 487e6bc91e (il y a 3 jours) • 2018-04-03 10:59:12 -0700
Moteur • révision 04f3c6557c
Outils • Dart 2.0.0-dev.43.0.flutter-52afcba357
Android Studio 3.1
Build # AI-173.4670197, construit le 22 mars 2018
JRE : 1.8.0_152-release-1024-b01 x86_64
JVM : OpenJDK 64-Bit Server VM par JetBrains sro
Mac OS X 10.13.4
cacaopodes 1.4.0
opéra 52.0.2871.40 (:

@Zmeu213 Merci beaucoup. Avez-vous essayé si Cocoapods 1.5.0 fonctionne pour vous avec Flutter master, donc après l'atterrissage de https://github.com/flutter/flutter/pull/16273 ? (Peut nécessiter la création d'un nouveau projet Flutter et l'ajout d'une dépendance de plugin à celui-ci pour vérifier)

Pas certain. J'ai basculé le flutter sur master et dev plusieurs fois, je l'ai réinstallé et j'ai forcé les pods mis à jour. Mais je n'ai pas créé de nouveau projet avec Cocopods 1.5 installé. Je ne sais pas quelle version de Cocopods a été installée sur la machine précédente, cela pourrait aussi être juste un problème avec la migration de 1.4 à 1.5. J'ai seulement lancé le projet d'exemple de firebase sans aucun changement.

Le correctif suggéré par @Zmeu213 a également fonctionné pour moi

Pour ceux qui ont mis à jour Cocoapods avec Homebrew et n'ont toujours pas nettoyé son cache, revenez à 1.4 avec brew switch cocoapods 1.4.0 , puis cd ios && pod update
Il devrait compiler maintenant.

Bonne correction. Merci @Zmeu213

Je suis d'accord que le correctif de #16273 semble résoudre le problème.
Dans mon cas, ma branche git flutter est en version bêta. Le commit

Je change de branche git flutter comme ci-dessous.

cd flottant
maître de caisse git
git tirer
docteur flottant

Et puis, il n'y a pas de problème de génération lorsque je crée un projet de modèle.

Notez que les projets déjà existants ne seront pas résolus.
Vous devez régénérer le projet ou modifier manuellement le fichier ios/Podfile ( pour swift ou pour Object-C ) et supprimer ios/Podfile.lock

Je pense que la page flottante « Commencer : Installer sur macOS » cause ce problème.
C'est parce qu'il existe une ancienne version du lien de téléchargement du SDK.
Il devrait être modifié pour cloner la dernière version comme ci-dessous.

git clone -b maître https://github.com/flutter/flutter.git
./flutter/bin/flutter --version

Référez https://flutter.io/sdk-archive/#macos

J'ai à nouveau supprimé les cocopods à l'aide de brew et installé la version 1.4.0 selon la solution de @Zmeu213 et mis à jour le flutter vers la dernière version principale, tout comme celle de @bbongcol . Pour moi, il ne compile toujours pas, et j'obtiens le même résultat comme toujours.

@ 0916174 Avez-vous vérifié si votre Xcode peut être en cause --- votre version de construction Xcode semble être différente de celle que vous obtenez avec un nouveau téléchargement il y a trois jours .

$ xcodebuild -version
Xcode 9.3
Build version 9E145

Je vais essayer de faire une nouvelle installation depuis l'App Store. Je copie également certaines commandes du fichier Podfile de @bbongcol à partir du commit référencé pour voir si cela aide.

Le projet fonctionne ! Lors de la copie des éléments suivants à partir du fichier Podfile de @bbongcol, mon projet s'exécute désormais correctement :

...
  use_frameworks!
...
pre_install do |installer|
  # workaround for https://github.com/CocoaPods/CocoaPods/issues/3289
  Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}
end
...
    target.headers_build_phase.files.each do |file|
      file.settings = { 'ATTRIBUTES' => ['Public'] }
    end

J'obtiendrai toujours une nouvelle version de Xcode au cas où.
Il semble qu'il y ait des différences dans le Podfile entre moi et @bbongcol que mon installation de flutter n'est pas incluse dans mes Podfiles générés, mais qu'elle est essentielle pour qu'il fonctionne correctement. Existe-t-il un moyen d'inclure ces lignes quelque part afin qu'elles soient automatiquement incluses lors de la génération d'un nouveau projet ?

Éditer

Voici ma sortie Xcode en ce moment :

$ xcodebuild -version
Xcode 9.3
Build version 9E145

On dirait que c'est pareil.

Ah d'accord, votre Xcode est déjà mis à jour vers 9.3 stable, pas besoin de réinstaller. (il y a 12 jours, vous avez utilisé la version 9Q127n, voir en haut du message).

Je crois que je l'ai réinstallé lorsque j'ai essayé de réinstaller tout ce qui concerne le flutter ici .

Les différences Podfile répertoriées ci-dessus sont nécessaires pour les projets Flutter basés sur Swift, créés avec -i swift .

Il semble qu'il y ait des différences dans le Podfile entre moi et @bbongcol que mon installation de flutter n'est pas incluse dans mes Podfiles générés, mais qu'elle est essentielle pour qu'il fonctionne correctement. Existe-t-il un moyen d'inclure ces lignes quelque part afin qu'elles soient automatiquement incluses lors de la génération d'un nouveau projet ?

Vous ne savez pas ce que vous entendez par là ? L'installation de flutter contient deux modèles Podfile , un pour les projets Objective-C, un pour les projets Swift. Ils sont censés être copiés dans votre projet lorsque vous ajoutez une dépendance de plugin et reconstruisez --- à moins que vous n'ayez déjà un Podfile dans votre projet, auquel cas l'outil Flutter ne l'écrase pas.

Les différences Podfile répertoriées ci-dessus sont nécessaires pour les projets Flutter basés sur Swift, créés avec -i swift.

C'est étrange puisque mon projet newregular vient de se construire et s'exécute correctement. Cependant, lors de l'exécution d'un autre projet (un exemple de projet sur redux par Brian Egan ), cela m'a donné des erreurs liées à Dart.
Je suppose que je ne devrais pas utiliser ce podfile Swift? Dans ce cas, j'ai besoin d'une autre solution.

Le Swift Podfile peut également fonctionner pour les projets ObjC, nous n'avons tout simplement pas testé cela.

Vous ne savez pas ce que vous entendez par là ?...

Lorsque j'ai essayé d'utiliser le fichier Podfile que j'ai copié à partir de @bbongcol , mon projet (un projet flutter create ... normal sans -i swift ) a été construit et a bien fonctionné. Cependant, avec le fichier Podfile fourni par flutter (sans modifications), il plante avec l'erreur Flutter.h not found .
Ce que j'essayais de dire, c'est que les lignes qui se trouvent dans le Swift Podfile sont essentielles à la construction de mon projet. C'est tout.

Nous avons donc maintenant une solution qui fonctionne (en utilisant le fichier -i swift Podfile) mais ce n'est pas vraiment une bonne solution, n'est-ce pas ? Puisque tout le monde dit qu'ils peuvent construire des projets sans problèmes. Cela aide cependant à réduire le problème.

Je n'ai pas essayé les exemples de projets de Brian, mais je soupçonne qu'ils n'ont pas encore été mis à niveau pour faire face aux vérifications de type d'exécution de Dart 2 . Si c'est le cas, vous devriez pouvoir les exécuter avec le drapeau --no-preview-dart-2 .

Waouh ça marche !
Donc, je suppose que dans un avenir proche, je devrai copier ce Podfile dans tous mes nouveaux projets. Pas une solution permanente, mais assez bonne pour travailler.

Merci beaucoup pour votre aide. Je pense que ce problème peut être clos maintenant, si vous le jugez également résolu.

Pour les personnes ayant ce problème à l'avenir, essayez les solutions ci-dessus ou utilisez ce fichier Podfile (et exécutez d'anciens projets avec flutter run --no-preview-dart-2 ).

Eh bien, ce fut une victoire de courte durée.

Même problème, maintenant avec le package map_view.

pubspec.yaml :

...
  map_view: "^0.0.10"
...

J'ai également eu une victoire de courte durée, mais la version bêta 2 a récemment résolu le problème.

La bêta 2 semble fonctionner pour moi aussi. Ne pas appeler ma victoire trop tôt cette fois, cependant. Laissez-moi faire d'autres tests.

J'étais confronté à un problème similaire. J'ai fini par créer un nouveau projet flutter avec ces paramètres (suivant actuellement le canal principal):

$ flutter doctor -v
[✓] Flutter (Channel master, v0.2.11-pre.23, on Mac OS X 10.13.4 17E199, locale en-US)
    • Flutter version 0.2.11-pre.23
    • Framework revision a2951a9a1f (3 hours ago), 2018-04-10 18:12:34 -0700
    • Engine revision ed303c628f
    • Dart version 2.0.0-dev.47.0.flutter-23ae4fa098

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.io/setup/#android-setup for detailed instructions).
      If Android SDK has been installed to a custom location, set $ANDROID_HOME to that location.

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

[✗] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.io/setup/#android-setup for detailed instructions).

[!] Connected devices
    ! No devices available

! Doctor found issues in 3 categories.

J'ai comparé le Podfile du nouveau projet et de l'ancien projet, voici la différence :

https://gist.github.com/bschwind/9bdaf094afa01ce7c4ca04c673d34821

Ensuite , je supprimé le ios/Pods répertoire, le ios/Podfile.lock fichier, l'ensemble de ~/.pub_cache répertoire, a couru flutter clean , et enfin flutter run . Cela a fonctionné après cela.

Il semble que ce problème soit résolu.

J'ai un problème différent maintenant, similaire aux problèmes #15152, #15168 et #15050. J'ouvrirai un nouveau problème pour ce problème car pour l'instant, il semble qu'il n'y ait pas de réponses claires pour résoudre ce problème, juste des solutions de contournement.

Tout comme j'ai tapé cela et réexécuté un projet, l'erreur est revenue de ce qui ne semble nulle part.
Je suis frustré par l'oubli.

@ 0916174 Puis-je vous demander d'essayer ce qui suit :

  • assurez-vous que Cocoapods 1.5.0 est installé ( pod --version devrait dire 1.5.0 )
  • modifiez toutes les dépendances que vous avez sur les plugins firebase_xxx , google_sign_in ou cloud_firestore vers les versions les plus récentes (recherchez les entrées du journal des modifications faisant référence à Cocoapods 1.5.0)
  • changez votre ios/Podfile vers la dernière version sur la branche principale de Flutter (https://github.com/flutter/flutter/tree/master/packages/flutter_tools/templates/cocoapods)
  • supprimer ios/Podfile.lock et ios/Pods
  • passer à la branche principale de Flutter
  • flutter clean ; flutter run

Cf. #16443, flutter/plugins#483

Je l'ai fait, même erreur.

Je viens de me souvenir de quelque chose qui peut avoir de la valeur. Quand j'ai dit 'Il semble que ce problème soit résolu.' J'avais une erreur différente. Pour résoudre ce problème, j'ai commenté use_frameworks! dans le fichier Podfile. Ensuite, j'ai eu l'erreur Flutter.h not found. Après cela, j'ai à nouveau décommenté use_frameworks! comme avant d'avoir l'erreur, mais l'erreur persiste.
Je vais abandonner cela et faire une réinstallation Mac bientôt. Je ne vois rien qui puisse arranger ça.

Si vous avez des suggestions, allez-y. Merci de votre aide.

Vous devriez avoir use_frameworks ! dans votre Podfile uniquement si votre projet Flutter utilise Swift

Je ne comprends pas pourquoi cela a été fermé @ 0916174 ? Je ne vois pas comment ce problème est résolu.

La mise à niveau vers la version 1.4.0 a fonctionné, bien sûr, mais ne devrait-elle pas prendre en charge la version 1.5.0 ? Ou est-ce encore en version bêta ? alors pourquoi brew installe-t-il une version bêta de cela par défaut?

J'ai fermé ceci car il semble que ce soit un problème avec ma machine locale. Toute solution possible n'a pas fonctionné ou a temporairement fonctionné, puis a cessé de fonctionner. Je vais le rouvrir car c'est toujours un problème, oui, mais je vais réinstaller mon Mac OS (ou en obtenir un nouveau pendant que j'y suis).

Les développeurs répondent mieux aux questions concernant le flutter et la version bêta.

@ 0916174 Non, je pense que vous avez également trouvé un bogue légitime avec 1.5.0

j'ai le meme probleme

@makalu-niko Seriez-vous en mesure de partager la sortie de flutter doctor -v et les fichiers pubspec.yaml et ios/Podfile dans votre projet ?

Manière de reproduire le problème :
flutter create sandbox
Ajoutez google_sign_in : "^3.0.1" dans pubspec.yaml
flutter run

Résultats de l'exécution :

$ flutter run
Running "flutter packages get" in sandbox...                 1,0s
Launching lib/main.dart on iPhone X in debug mode...
Running pod install...                                       1,5s
Running Xcode clean...                                       1,0s
Starting Xcode build...                                          
Xcode build done                                             2,5s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    === BUILD TARGET google_sign_in OF PROJECT Pods WITH CONFIGURATION Debug ===
    In file included from /Users/Nicolas/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-3.0.1/ios/Classes/GoogleSignInPlugin.m:5:
    /Users/Nicolas/flutter/.pub-cache/hosted/pub.dartlang.org/google_sign_in-3.0.1/ios/Classes/GoogleSignInPlugin.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 X.

Résultats de flutter doctor -v

[✓] Flutter (Channel beta, v0.2.8, on Mac OS X 10.13.4 17E199, locale fr-FR)
    • Flutter version 0.2.8 at /Users/Nicolas/flutter
    • Framework revision b397406561 (12 days ago), 2018-04-02 13:53:20 -0700
    • Engine revision c903c217a1
    • Dart version 2.0.0-dev.43.0.flutter-52afcba357

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.io/setup/#android-setup for detailed instructions).
      If Android SDK has been installed to a custom location, set $ANDROID_HOME to that location.

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

[✗] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.io/setup/#android-setup for detailed instructions).

[✓] IntelliJ IDEA Community Edition (version 2018.1.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 23.2.3
    • Dart plugin version 181.4445.29

[✓] Connected devices (1 available)
    • iPhone X • 29F3E55E-BC01-496F-8399-E68DA6B195ED • ios • iOS 11.3 (simulator)

! Doctor found issues in 2 categories.`

pubspec.yaml.zip
Podfile.zip

@makalu-niko Merci beaucoup ! Il semble que vous soyez sur le canal bêta de Flutter, et donc le Podfile que l'outil Flutter génère pour votre projet sandbox n'est pas basé sur le modèle le plus récent de Flutter master.

Je peux donc reproduire l'erreur avec votre Podfile , mais pas avec la version tip-of-tree .

Si vous remplacez sandbox/ios/Podfile par celui-ci et supprimez sandbox/ios/Podfile.lock et sandbox/ios/Pods/ , alors flutter clean ; flutter run devrait fonctionner.

Je viens de rencontrer la même erreur, également avec un nouveau projet. J'ai presque tout essayé (donc mon environnement pourrait être assez foiré en fait) mais aucune solution pour l'instant.

Pas:

flutter create cocoatest

// blablabla
[✓] Flutter is fully installed. (Channel master, v0.2.12-pre.33, on Mac OS X 10.13.4 17E199, locale en-IT)
[✓] Android toolchain - develop for Android devices is fully installed. (Android SDK 27.0.3)
[✓] iOS toolchain - develop for iOS devices is fully installed. (Xcode 9.3)
[✓] Android Studio is fully installed. (version 3.0)
[!] IntelliJ IDEA Ultimate Edition is partially installed; more components are available. (version 2016.2.5)
[✓] VS Code is fully installed. (version 1.22.2)
[✓] Connected devices is fully installed. (1 available)

puis essayer de lancer:

cd cocoatest
flutter run

Launching lib/main.dart on iPhone X in debug mode...
Running Xcode clean...                                       1.0s
Starting Xcode build...
 ├─Assembling Flutter resources...                    1.3s
 └─Compiling, linking and signing...                  0.2s
Xcode build done.                                            2.8s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    In file included from /Users/enrico/Development/flutter_projects/cocoatest/ios/Runner/GeneratedPluginRegistrant.m:5:
    /Users/enrico/Development/flutter_projects/cocoatest/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.

Juste pour être sûr qu'un flutter doctor -v sort

[✓] Flutter (Channel master, v0.2.12-pre.33, on Mac OS X 10.13.4 17E199, locale en-IT)
    • Flutter version 0.2.12-pre.33 at /Users/enrico/development/flutter
    • Framework revision ea30c95dc9 (35 hours ago), 2018-04-13 17:02:14 -0700
    • Engine revision 76cb311d9c
    • Dart version 2.0.0-dev.47.0.flutter-f76dad0adc

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

Assez frustrant..

@enrichman Cela signifie-t-il que flutter run échoue pour un projet Flutter nouvellement créé sans aucune dépendance de plugin ajoutée ? Sinon, puis-je vous demander de partager votre fichier ios/Podfile pubspec.yaml ios/Podfile (si présent) ?

Cela signifie-t-il que l'exécution de flutter échoue pour un projet Flutter nouvellement créé sans aucune dépendance de plug-in ajoutée ?

@mravn-google c'est vrai. Comme vous ne pouvez le voir aucun Podfile dans le projet.

screen shot 2018-04-15 at 13 27 47

Le pubspec.yaml est celui par défaut (j'ai supprimé les commentaires) :

name: cocoatest
description: A new Flutter project.

dependencies:
  flutter:
    sdk: flutter

  cupertino_icons: ^0.1.0

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

Merci pour votre soutien rapide sur celui-ci. Je ne suis pas un développeur iOS donc je suis assez perdu sur les erreurs qui en découlent (je ne savais même pas ce qu'est un pod 😂).

@enrichman Maintenant, c'est déroutant... Il me semble avoir exactement la même configuration que vous

[✓] Flutter (Channel master, v0.2.12-pre.33, on Mac OS X 10.13.3 17D102, locale en-US)
    • Flutter version 0.2.12-pre.33 at /Users/mravn/github/flutter
    • Framework revision ea30c95dc9 (2 days ago), 2018-04-13 17:02:14 -0700
    • Engine revision 76cb311d9c
    • Dart version 2.0.0-dev.47.0.flutter-f76dad0adc

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

pourtant je ne peux pas reproduire l'erreur. Quel est le contenu de votre dossier ios/Flutter et du fichier Generated.xcconfig qu'il contient ? Le mien ressemble à ceci :

ios/Fltter

App.framework
flutter_assets
Flutter.framework
AppFrameworkInfo.plist
Debug.xcconfig
Generated.xcconfig
Release.xcconfig

Généré.xcconfig :

// This is a generated file; do not edit or check into version control.
FLUTTER_ROOT=/Users/mravn/github/flutter
FLUTTER_APPLICATION_PATH=/Users/mravn/apps/flutter_projects/cocotest
FLUTTER_TARGET=lib/main.dart
FLUTTER_BUILD_MODE=debug
FLUTTER_BUILD_DIR=build
SYMROOT=${SOURCE_ROOT}/../build/ios
FLUTTER_FRAMEWORK_DIR=/Users/mravn/github/flutter/bin/cache/artifacts/engine/ios
PREVIEW_DART_2=true

@mravn-google J'espérais trouver quelque chose de différent mais le répertoire et le fichier sont exactement les mêmes que les vôtres :

screen shot 2018-04-15 at 14 03 52

// This is a generated file; do not edit or check into version control.
FLUTTER_ROOT=/Users/enrico/development/flutter
FLUTTER_APPLICATION_PATH=/Users/enrico/Development/flutter_projects/cocoatest
FLUTTER_TARGET=lib/main.dart
FLUTTER_BUILD_MODE=debug
FLUTTER_BUILD_DIR=build
SYMROOT=${SOURCE_ROOT}/../build/ios
FLUTTER_FRAMEWORK_DIR=/Users/enrico/development/flutter/bin/cache/artifacts/engine/ios
PREVIEW_DART_2=true

Le dossier En-têtes est cependant vide :

screen shot 2018-04-15 at 14 05 37

Bingo. Le dossier Headers n'est pas censé être vide ! En effet, le mien contient tous les fichiers d'en-tête FlutterXxx.h . Ceux-ci sont censés être copiés à partir de votre installation Flutter. Dans votre cas, /Users/enrico/development/flutter/bin/cache/artifacts/engine/ios/Flutter.framework . Ce dossier est-il vide aussi ? Si tel est le cas, votre installation Flutter est incomplète. Je vous suggère de supprimer le répertoire flutter/bin/cache/ puis d'exécuter flutter doctor . Cela devrait télécharger les fichiers nécessaires et recréer le cache. Nous aurions alors besoin de découvrir ce qui a fait que votre installation Flutter se retrouve dans cet état.

Merci @mravn-google !
Le dossier n'était pas vide mais il était perturbé par des liens symboliques étranges :

screen shot 2018-04-15 at 14 37 32

Comme vous l'avez dit, vider le cache rm -rf ~/Development/flutter/bin/cache et exécuter un flutter doctor fonctionné.
Les fichiers d'en-têtes étaient là et tout semble fonctionner maintenant.

Je viens de créer un nouveau projet et de faire une course sans aucun problème. ??

Maintenant, je dois voir ce qui casse mon projet d'origine, ou comment y remédier :

Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    In file included from /Users/enrico/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-0.3.1/ios/Classes/FirebaseAnalyticsPlugin.m:5:
    /Users/enrico/development/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-0.3.1/ios/Classes/FirebaseAnalyticsPlugin.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.

Une aide à ce sujet ?

J'ai essayé de vider le cache des packages (en essayant simplement de supprimer tous les caches de mon Mac) pour voir s'il s'agissait de quelque chose de lié, mais sans succès.

rm -rf /Users/enrico/development/flutter/.pub-cache
flutter packages get
flutter clean ; flutter run

@enrichman, tout ce que j'ai fait, c'est d'abord de supprimer le 1.5.0 brew rm cocoapods , puis de passer à 1.4.0

brew switch cocoapods 1.4.0 cela a juste fonctionné pour moi il y a quelques problèmes avec 1.5.0.

@ashim888 J'ai eu des problèmes pour installer la 1.4.0 en fait. Je n'ai pas trouvé de solution avec l'infusion. Peut-être que vous l'avez déjà installé, c'est pourquoi brew switch ne fonctionne pas pour moi (je n'ai pas la version localement).

brew switch cocoapods 1.4.0
Error: cocoapods not found in the Cellar.

brew install [email protected]
Error: No available formula with the name "[email protected]"

brew search cocoapods
==> Searching local taps...
cocoapods

Peut-être que plus tard, j'essaierai de voir si l'installation manuelle de la 1.4.0 pourrait résoudre le problème, mais cela semble juste une solution de contournement et j'aimerais voir s'il existe une solution.

@enrichman ouais moi aussi je cherche une solution, mais cela a fonctionné pour moi pour le moment.

@ashim888 @enrichman Les solutions de contournement que nous avions

@enrichman Pour que nous vous firebase_analytics , veuillez partager vos pubspec.yaml et ios/Podfile .

@mravn-google

Le pubspec.yaml est standard mais avec ces dépendances :

dependencies:
  flutter:
    sdk: flutter
  image_picker: 0.1.1
  google_sign_in: 3.0.1
  firebase_analytics: 0.3.1
  firebase_auth: 0.5.4
  firebase_database: 0.4.4
  firebase_storage: 0.2.2
  flutter_facebook_login: 1.1.1

et le Podfile est celui que vous avez lié auparavant (https://raw.githubusercontent.com/flutter/flutter/master/packages/flutter_tools/templates/cocoapods/Podfile-objc)

@enrichman Ces dépendances fonctionnent bien pour moi dans un projet Flutter nouvellement créé, y compris le Podfile référencé. Est-il utile de supprimer les éléments suivants et de réessayer ?

rm -rf build/ ios/Podfile.lock ios/Pods/
flutter run

@mravn-google hm, la suppression de ces fichiers génère une erreur différente la première fois :

Launching lib/main.dart on iPhone X in debug mode...
Running pod install...                                       6.2s
Running Xcode clean...                                       1.2s
Starting Xcode build...
Xcode build done.                                            4.8s
Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    === BUILD TARGET leveldb-library OF PROJECT Pods WITH CONFIGURATION Debug ===
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:133:17: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
                    _view.frame = CGRectMake(0.0, 0.0, CGRectGetWidth(_view.bounds), 0.0);
                    ^
                    self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:133:67: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
                    _view.frame = CGRectMake(0.0, 0.0, CGRectGetWidth(_view.bounds), 0.0);
                                                                      ^
                                                                      self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:148:18: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
                    [_view sizeToFit];
                     ^
                     self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:189:13: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
            if (_navigationController) {
                ^
                self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:190:40: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
                [self updateNavigationBarY:_view.statusBarHeight];
                                           ^
                                           self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:193:24: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
            CGRect frame = _view.frame;
                           ^
                           self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:195:9: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
            _view.frame = frame;
            ^
            self->
    /Users/enrico/Development/flutter_projects/myproject/ios/Pods/Bolts/Bolts/iOS/BFAppLinkReturnToRefererController.m:203:17: warning: block implicitly retains 'self'; explicitly mention 'self' to indicate this is intended behavior [-Wimplicit-retain-self]
                    _view.closed = YES;
                    ^
                    self->
    8 warnings generated.
    In file included from /Users/enrico/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-0.3.1/ios/Classes/FirebaseAnalyticsPlugin.m:5:
    /Users/enrico/.pub-cache/hosted/pub.dartlang.org/firebase_analytics-0.3.1/ios/Classes/FirebaseAnalyticsPlugin.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 X.

Ensuite, le deuxième flutter run déclenche la même erreur que précédemment (celle à propos du FirebaseAnalyticsPlugin).

Je suis presque sûr d'avoir foiré quelque chose dans mon environnement ou ma configuration en changeant de branche.
Le projet n'en est qu'à ses débuts et je peux probablement tout copier dans un nouveau, mais j'étais curieux de comprendre ce qui s'est passé (cela pourrait peut-être aider quelqu'un).

La plupart de ce qui précède ne sont que des avertissements que je suppose que vous ne verrez que sur la première version, car après cela, le code impliqué a déjà été généré. Il semble que l'erreur, signalée à la fin, soit la même qu'auparavant.

@mravn-google juste pour ajouter quelques informations, je ne suis pas en mesure d'ajouter une seule dépendance ..

Après avoir créé un nouveau projet et ajouté une nouvelle dépendance (c'est-à-dire : image_picker: 0.4.1 ), j'ai eu l'erreur :

Failed to build iOS app
Error output from Xcode build:
↳
    ** BUILD FAILED **

Xcode's output:
↳
    === BUILD TARGET image_picker OF PROJECT Pods WITH CONFIGURATION Debug ===
    In file included from /Users/enrico/.pub-cache/hosted/pub.dartlang.org/image_picker-0.4.1/ios/Classes/ImagePickerPlugin.m:7:
    /Users/enrico/.pub-cache/hosted/pub.dartlang.org/image_picker-0.4.1/ios/Classes/ImagePickerPlugin.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 X.

Dois-je essayer de réinstaller Flutter ? Aucune idée..

@enrichman Votre ios/Podfile doit être une copie des derniers modèles de projet Flutter pour fonctionner avec Cocoapods 1.5.0.

Je rencontre également la même erreur :

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

Xcode's output:
↳
    In file included from /Users/WingHinChan/.pub-cache/hosted/pub.dartlang.org/path_provider-0.4.0/ios/Classes/PathProviderPlugin.m:5:
    /Users/WingHinChan/.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.
    In file included from /Users/WingHinChan/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.4.1/ios/Classes/SharedPreferencesPlugin.m:5:
    /Users/WingHinChan/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.4.1/ios/Classes/SharedPreferencesPlugin.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 X.

J'essaie de rétrograder mes Cocoapods pour voir si je peux résoudre ce problème en le rétrogradant à 1.4.0. J'ai utilisé le code de ce fil SO pour le faire:

sudo gem désinstaller les cocopodes

sudo gem installer cocopods -v 1.4.0

Voici ma liste de joyaux :

screen shot 2018-04-18 at 11 24 54

Quand je lance Flutter Doctor, il me demande d'installer des cocopodes via brew :

brew install cocoapods
pod setup

Pourquoi flutter ne reconnaît-il pas que j'ai un Cocopods 1.4.0 installé via gem ?
De plus, lorsque j'ai essayé de préparer l'installation de [email protected] , cela échoue car la rétrogradation est introuvable.

Il vous demande de l'installer via brew parce que la gemme réelle de cocopods n'était pas dans votre liste de gemmes pour une raison quelconque.
cocoapods (1.4.0) manquait. Il devrait être au-dessus de cocoapods-core (1.4.0) .

La façon dont vous installez Cocoapods ne devrait pas avoir d'importance pour Flutter tant que l'exécutable pod est sur votre chemin.

@ 0916174 Il est peu probable que la mise à niveau de Cocoapods vers la 1.4.0 résolve vos problèmes, et l'outillage Flutter sera testé avec Cocoapods 1.5.0 à l'avenir.

@mravn-google le problème est que j'ai déjà exactement le même fichier.

J'ai essayé de faire la même chose sur mon autre Mac et cela fonctionne sans problème. C'est probablement quelque chose que j'ai cassé sur ma machine qui cause le problème.

Il semble que le flutter run relie les fichiers dans le cache d'une manière étrange ( @see ), et comme ils sont référencés dans le .symlinks sous ios/Pods quelque chose de bizarre se produit .

Sur mon deuxième Mac, après le flutter run , tout va bien.

Je vais essayer de supprimer flutter et de le réinstaller.

@enrichman Si le contenu de <flutter_install_dir>/bin/cache est cassé, supprimez simplement bin/cache , puis exécutez flutter doctor . Je serais très intéressé par l'apprentissage des étapes pour reproduire les liens symboliques que vous obtenez.

@mravn-google, j'essaie de supprimer bin/cache, puis d'exécuter Flutter Doctor, puis Flutter Run, mais j'ai toujours les erreurs.

@mravn-google l'a déjà fait, supprimant également le .pub-cache des dépendances mais obtenant toujours le même comportement.

Les choses étranges que j'ai faites avant d'obtenir l'erreur étaient principalement de changer de branche de Flutter et de recompiler avec flutter doctor . Je ne sais pas s'il existe d'autres dossiers "cachés" que je pourrais essayer de supprimer.

@arden @enrichman Des étapes exactes à reproduire seraient les bienvenues. Par exemple, quel projet, avec quelles dépendances ( pubspec.yaml ) et ios/Podfile (le cas échéant), exécutez-vous ? Quelle version de Flutter utilisez-vous ? ( flutter doctor -v ). Le projet est-il ouvert dans Xcode pendant que vous effectuez ces étapes ? Spécifiez-vous des paramètres à flutter run ?

@mravn-google
J'ai tiré le master et il ne démarre même pas, alors j'ai essayé de vérifier le v0.3.0 .

Les étapes consistaient essentiellement à vider les caches :

rm -rf /Users/enrico/.pub-cache
rm -rf /Users/enrico/development/flutter/bin/cache

construire flutter

flutter doctor -v

[✓] Flutter (Channel unknown, v0.3.0, on Mac OS X 10.13.4 17E199, locale en-IT)
    • Flutter version 0.3.0 at /Users/enrico/development/flutter
    • Framework revision c73b8a7cf6 (6 days ago), 2018-04-12 16:17:26 -0700
    • Engine revision 8a6e64a8ef
    • Dart version 2.0.0-dev.47.0.flutter-4126459025

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

créé et exécutez une application de test :

flutter create testapp
cd testapp
flutter run

L'application s'exécute. Les Headers sont ok.

ll /Users/enrico/development/flutter/bin/cache/artifacts/engine/ios/Flutter.framework/Headers

-rw-r--r--  1 enrico  staff   1,9K  5 Apr 00:03 Flutter.h
-rw-r--r--  1 enrico  staff   1,5K  5 Apr 00:03 FlutterAppDelegate.h
-rw-r--r--  1 enrico  staff   2,5K  5 Apr 00:03 FlutterBinaryMessenger.h
-rw-r--r--  1 enrico  staff    13K  5 Apr 00:03 FlutterChannels.h
-rw-r--r--  1 enrico  staff    13K  5 Apr 00:03 FlutterCodecs.h
-rw-r--r--  1 enrico  staff   1,7K  5 Apr 00:03 FlutterDartProject.h
-rw-r--r--  1 enrico  staff   1,1K  5 Apr 00:03 FlutterHeadlessDartRunner.h
-rw-r--r--  1 enrico  staff   1,4K  5 Apr 00:03 FlutterMacros.h
-rw-r--r--  1 enrico  staff   261B  5 Apr 00:03 FlutterNavigationController.h
-rw-r--r--  1 enrico  staff   7,4K  5 Apr 00:03 FlutterPlugin.h
-rw-r--r--  1 enrico  staff   741B  5 Apr 00:03 FlutterTexture.h
-rw-r--r--  1 enrico  staff   1,8K  5 Apr 00:03 FlutterViewController.h

Jusqu'ici tout va bien.

Ensuite, j'ai ajouté une seule dépendance ( image_picker: 0.1.1 ) dans le pubspec.yaml qui a déclenché un flutter packages get , qui a généré le Podfile , identique à celui que vous avez référencé .

J'ai vérifié les en-têtes et ils sont toujours bons.

L'exécution d'un flutter run échouera et gâchera les en-têtes :

Launching lib/main.dart on iPhone X in debug mode...
Skipping compilation. Fingerprint match.
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 image_picker OF PROJECT Pods WITH CONFIGURATION Debug ===
    In file included from /Users/enrico/.pub-cache/hosted/pub.dartlang.org/image_picker-0.1.1/ios/Classes/ImagePickerPlugin.m:7:
    /Users/enrico/.pub-cache/hosted/pub.dartlang.org/image_picker-0.1.1/ios/Classes/ImagePickerPlugin.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 X.
ll /Users/enrico/development/flutter/bin/cache/artifacts/engine/ios/Flutter.framework/Headers

lrwxr-xr-x  1 enrico  staff     9B 18 Apr 21:18 Flutter.h -> Flutter.h
lrwxr-xr-x  1 enrico  staff    20B 18 Apr 21:18 FlutterAppDelegate.h -> FlutterAppDelegate.h
lrwxr-xr-x  1 enrico  staff    24B 18 Apr 21:18 FlutterBinaryMessenger.h -> FlutterBinaryMessenger.h
lrwxr-xr-x  1 enrico  staff    17B 18 Apr 21:18 FlutterChannels.h -> FlutterChannels.h
lrwxr-xr-x  1 enrico  staff    15B 18 Apr 21:18 FlutterCodecs.h -> FlutterCodecs.h
lrwxr-xr-x  1 enrico  staff    20B 18 Apr 21:18 FlutterDartProject.h -> FlutterDartProject.h
lrwxr-xr-x  1 enrico  staff    27B 18 Apr 21:18 FlutterHeadlessDartRunner.h -> FlutterHeadlessDartRunner.h
lrwxr-xr-x  1 enrico  staff    15B 18 Apr 21:18 FlutterMacros.h -> FlutterMacros.h
lrwxr-xr-x  1 enrico  staff    29B 18 Apr 21:18 FlutterNavigationController.h -> FlutterNavigationController.h
lrwxr-xr-x  1 enrico  staff    15B 18 Apr 21:18 FlutterPlugin.h -> FlutterPlugin.h
lrwxr-xr-x  1 enrico  staff    16B 18 Apr 21:18 FlutterTexture.h -> FlutterTexture.h
lrwxr-xr-x  1 enrico  staff    23B 18 Apr 21:18 FlutterViewController.h -> FlutterViewController.h

Je viens de vérifier la sortie du flutter run -v et j'ai trouvé ces lignes :

[        ] Error output from CocoaPods:
           ↳
[        ]
           [!] `<PBXGroup UUID=`97C146E51CF9000F007C117D`>` attempted to initialize an object with an unknown UUID. `CF3B75C9A7D2FA2A4C99F110` for attribute: `children`. This can be the result of a merge and  the unknown UUID is being discarded.

           [!] 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`.

Peut être lié ? Voici le reste d'une partie de la sortie

@enrichman Merci beaucoup, c'est extrêmement utile. Je vais essayer de reproduire tout de suite.

Pas de chance. flutter run fonctionne bien, le dossier Headers est resté intact.

flutter run -v transcription :

[ +550 ms] pod --version
[ +551 ms] 1.5.0
[   +2 ms] Running pod install...
[+1179 ms] CocoaPods' output:
                   ↳
[        ]   Preparing

           Analyzing dependencies

           Inspecting targets to integrate
             Using `ARCHS` setting to build architectures of target `Pods-Runner`: (`arm64`)

           Fetching external sources
           -> Fetching podspec for `Flutter` from `Pods/.symlinks/flutter/ios`
           -> Fetching podspec for `image_picker` from `Pods/.symlinks/plugins/image_picker/ios`

           Resolving dependencies of `Podfile`

           Comparing resolved specification to the sandbox manifest
             A Flutter
             A image_picker

           Downloading dependencies

           -> Installing Flutter (1.0.0)

           -> Installing image_picker (0.0.1)
             - Running pre install hooks

           Generating Pods project
             - Creating Pods project
             - Adding source files to Pods project
             - Adding frameworks to Pods project
             - Adding libraries to Pods project
             - Adding resources to Pods project
             - Adding development pod helper files to Pods project
             - Linking headers
             - Installing targets
               - Installing target `image_picker` iOS 4.3
               - Installing target `Pods-Runner` iOS 8.0
             - Running post install hooks
               - Podfile
             - Writing Xcode project file to `Pods/Pods.xcodeproj`
               - Generating deterministic UUIDs
             - Writing Lockfile in `Podfile.lock`
             - Writing Manifest in `Pods/Manifest.lock`

           Integrating client project

           Integrating target `Pods-Runner` (`Runner.xcodeproj` project)
             - Running post install hooks
               - cocoapods-stats from `/usr/local/Cellar/ruby/2.5.1/lib/ruby/gems/2.5.0/gems/cocoapods-stats-1.0.0/lib/cocoapods_plugin.rb`

           -> Pod installation complete! There are 2 dependencies from the Podfile and 2 total pods installed.

[        ] Error output from CocoaPods:
           ↳
[        ] 
           [!] 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`.

[        ] Running Xcode clean...

@mravn-google merci pour votre soutien. J'ai essayé de réinstaller flutter et cocoapods supprimant tout sans succès.

Le problème est sur le pod install . Après cela, j'ai trouvé les liens symboliques foirés. Je ne sais pas ce qui ne va pas mais est lié à mon environnement.

@enrichman Une expérience à faire est de modifier le Podfile pour garder le dossier .symlinks dehors de Pods/ , en tant que frère de celui-ci à la place.

Quelque chose comme ça (non testé). Et puis ajoutez .symlinks au fichier ios/.gitignore .

# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'

def parse_KV_file(file, separator='=')
  file_abs_path = File.expand_path(file)
  if !File.exists? file_abs_path
    return [];
  end
  pods_ary = []
  skip_line_start_symbols = ["#", "/"]
  File.foreach(file_abs_path) { |line|
      next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
      plugin = line.split(pattern=separator)
      if plugin.length == 2
        podname = plugin[0].strip()
        path = plugin[1].strip()
        podpath = File.expand_path("#{path}", file_abs_path)
        pods_ary.push({:name => podname, :path => podpath});
      else
        puts "Invalid plugin specification: #{line}"
      end
  }
  return pods_ary
end

target 'Runner' do
  use_frameworks!

  # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
  # referring to absolute paths on developers' machines.
  system('rm -rf .symlinks')
  system('mkdir -p .symlinks/plugins')

  # Flutter Pods
  generated_xcode_build_settings = parse_KV_file('./Flutter/Generated.xcconfig')
  if generated_xcode_build_settings.empty?
    puts "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter packages get is executed first."
  end
  generated_xcode_build_settings.map { |p|
    if p[:name] == 'FLUTTER_FRAMEWORK_DIR'
      symlink = File.join('.symlinks', 'flutter')
      File.symlink(File.dirname(p[:path]), symlink)
      pod 'Flutter', :path => File.join(symlink, File.basename(p[:path]))
    end
  }

  # Plugin Pods
  plugin_pods = parse_KV_file('../.flutter-plugins')
  plugin_pods.map { |p|
    symlink = File.join('.symlinks', 'plugins', p[:name])
    File.symlink(p[:path], symlink)
    pod p[:name], :path => File.join(symlink, 'ios')
  }
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['ENABLE_BITCODE'] = 'NO'
    end
  end
end

@mravn-google a essayé sans succès. Je ne sais pas si j'ai suivi les étapes correctes, mais à la fin, le dossier .symlinks était à l'extérieur avec les liens (et les en-têtes étaient encore une fois foirés.

MAIS j'ai essayé de créer un projet rapide ( flutter create -i swift testapp ) et cela a fonctionné. ??

EDIT : je n'ai pas essayé votre fichier Podfile. Je ferai!

@mravn-google ÇA A MARCHÉ !!! :bouche_ouverte::bouche_ouverte::bouche_ouverte:
Je ne sais pas pourquoi, mais ça marche ! Merci!!

Merci @enrichman , c'est bon à savoir.
@ 0916174 Cette approche fonctionne-t-elle aussi pour vous ?

@mravn-google Pourriez-vous résumer la solution de contournement finale suggérée ? On ne sait pas quelles étapes sont nécessaires et lesquelles ne le sont pas. Par exemple, dois-je être le canal maître flutter ? Dois-je obtenir des fichiers de flutter github, dois-je supprimer certains fichiers, dois-je rétrograder Cocopos, dois-je copier les fichiers ci-dessus ? J'ai le même problème avec Flutter/Flutter.h mais avec le plugin audioplayer.

Soudainement, ce problème a commencé à se produire avec moi avec un projet que j'avais déjà travaillé sans problème. Je n'ai pas "touché" le projet ces derniers jours et maintenant que je l'ai ouvert et essayé de l'exécuter sur iOS, je commence à avoir cette erreur.

Pour ceux qui ont ce problème, ces étapes semblaient fonctionner avec moi :

1. uninstall cocoapods

     $sudo gem uninstall cocoapods

     $sudo gem uninstall -n/usr/local/bin cocoapods

2. install cocoapods 1.4

    $sudo gem install cocoapods -v 1.4

3. update pod

    $cd ios

4. pod

    $pod update

Source : http://www.jcodecraeer.com/a/anzhuokaifa/2018/0416/9596.html

@miguelpruivo Revenir à Cocoapods 1.4.0 est au mieux une solution à court terme. L'outillage Flutter (sur Flutter master) ne le prend pas en charge, car nous n'avons pas pu le faire fonctionner avec les projets Swift. Il est conseillé de mettre à jour votre ios/Podfile place.

@mravn-google quelles sont les étapes pour le faire ?

@miguelpruivo Copiez le Podfile adapté à votre projet du maître Flutter vers le ios/Podfile de votre projet et supprimez ios/Podfile.lock . Utilisez la version ObjC, si votre projet Flutter n'a pas été créé avec -i swift .

@mravn-google Désolé d'être absent un moment.
J'installe actuellement tous les logiciels sur mon nouveau Mac, mais je n'ai pas encore essayé Flutter.

Cependant, en parcourant mes fichiers utilisateur ( ~/Users/jeroen ), j'ai trouvé ceci :
image

Il semble que les en-têtes flottants dont tout le monde parle sont stockés de manière incorrecte. Au lieu de ~/Users/jeroen/flutter/bin... , c'est en ~/Users/jeroen/jeroen/flutter/bin... .

En déplaçant le dossier vers le bon emplacement, j'ai accidentellement supprimé mon dossier flutter d'origine, je ne peux donc pas le tester moi-même, mais peut-être que d'autres personnes ici pourraient vérifier si leurs en-têtes se trouvent également dans le mauvais dossier.

Mon nouveau MacBook avec une nouvelle installation (pas de restauration Time Machine) rencontre les mêmes problèmes (Flutter.h introuvable). Je vais essayer les solutions ci-dessus et faire rapport.

Avez-vous le macbook 12 pouces ? Je suis confronté à ce problème sur le mien...

Non, MacBook Pro 15" 2017.

J'ai aussi eu cela et j'ai regardé un peu. Pour une raison quelconque, il a tendance à apparaître lorsque Flutter décide de passer du moteur construit à "ios-release" à "ios".

Si ça aide.

J'ai pu reprendre partiellement mes activités en supprimant la plupart des artefacts de pod, puis en construisant via VSCode qui, je pense, crée un artefact de débogage au lieu d'un artefact de version.

Merci pour ton aide. Je ne peux toujours pas reproduire :-(

A fonctionné comme le charme! Merci

@mravn-google Je confirme également, votre solution pour déplacer le dossier .symlinks dehors de Pods/ fonctionné et mon projet se construit correctement avec CocoaPods 1.5.0, merci.

J'ai pu le résoudre en

  1. sudo gem uninstall cocoapods
  2. sudo gem install cocoapods -v 1.4.0
  3. flutter clean && flutter build ios

D'une manière ou d'une autre, CocoaPods 1.5.0 et 1.4.0 ont tous deux été installés.

@AppleEducate Veuillez être conscient de https://github.com/flutter/flutter/issues/16036#issuecomment -383069566

@mravn-google en copiant le fichier Podfile du maître de Flutter comme vous l'avez suggéré a résolu le problème de Flutter.h not found mais n'a pas résolu le problème de The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift .

L'ajout de cette ligne à la boucle post_install sur build_configurations comme suggéré ici le fait fonctionner après avoir exécuté pod install :

config.build_settings['SWIFT_VERSION'] = '3.2'

Ne vaudrait-il pas mieux ajouter cette ligne au fichier Podfile de Flutter ?

Tout semble fonctionner maintenant sur les pods version 1.5.0 et le dernier flutter master.
Merci à tous pour votre aide.

@ 0916174 Heureux d'apprendre que cela fonctionne pour vous maintenant !

Ça marche

J'ai eu le même problème et j'ai résolu de cette façon:

  1. Créez une nouvelle application via 'flutter create testProject'
  2. Supprimez le dossier 'ios' de votre ancien projet
  3. Copiez le dossier ios du nouveau projet vers votre ancien (déplacez 'testProject/ios' vers 'oldProject/ios')
    Ensuite, avec 'flutter run', tout a bien fonctionné.

J'espère que cette solution pourra aider

J'ai donc essayé la suggestion de @mravn-google et l'erreur Flutter.h manquante a disparu, mais cela a introduit un autre problème. Tous les plugins ont été déplacés dans ios/.symlinks/plugins et xcode ne les trouve pas.

Existe-t-il un moyen de définir le répertoire dans lequel les plugins doivent être recherchés ? Les lignes défaillantes dans xcode ressemblent à ceci :

importer

(avec d'autres importations de packages).

Merci!

Il ne devrait pas y avoir besoin de configuration auxiliaire pour utiliser des plugins, au-delà du Podfile qui est distribué avec Flutter. Si vous rencontrez des problèmes avec les modèles de projet des branches bêta ou master de Flutter, aidez-nous à le résoudre en signalant un nouveau problème, y compris la sortie de flutter doctor -v .

Bien sûr, je vais déposer un autre problème maintenant.

Je ne vois pas pourquoi cela a été fermé alors que nous devons encore copier un fichier Podfile depuis le maître, cela ne devrait-il pas rester ouvert jusqu'à ce que flutter upgrade répare ?

@acidjazz flutter upgrade ne modifie pas vos projets Flutter, il met uniquement à jour votre installation Flutter.

Plus précisément, une fois qu'un Podfile existe dans votre projet Flutter, l'outil Flutter ne tente pas de l'écraser, car vous pouvez y avoir des paramètres personnalisés. Comme vous le notez, c'est malheureux, car le Podfile a probablement été écrit par une version antérieure de l'outil Flutter à l'aide d'un modèle qui ne fonctionne pas avec les nouvelles versions de CocoaPods et/ou avec les projets Swift.

Nous travaillons sur un modèle de projet avec une séparation plus claire des fichiers créés et dont dépendent les outils Flutter (en particulier pour les plugins) et ceux que l'auteur de l'application est censé posséder.

J'ai rencontré le même problème, remplacez l'ios/Podfile par celui spécifié https://github.com/flutter/flutter/blob/master/packages/flutter_tools/templates/cocoapods/Podfile-objc a fonctionné. Merci

@chrisopal travaille pour moi. Merci

J'ai eu le même problème et j'ai résolu de cette façon:

  1. Créez une nouvelle application via 'flutter create testProject'
  2. Supprimez le dossier 'ios' de votre ancien projet
  3. Copiez le dossier ios du nouveau projet vers votre ancien (déplacez 'testProject/ios' vers 'oldProject/ios')
    Ensuite, avec 'flutter run', tout a bien fonctionné.

J'espère que cette solution pourra aider

la meilleure solution pour moi. Merci beaucoup

@vankhoa01 vous pouvez aussi simplement supprimer ios/ et exécuter flutter create .

J'ai eu le même problème. le résoudre en téléchargeant la v0.11.3. Canal de développement https://flutter.io/docs/development/tools/sdk/archive#macos
La version Beta flutter ne fonctionne pas avec Beta xcode

J'ai résolu mon problème en mettant à jour la configuration du pod. Pour mettre à jour les CocoaPods pour ios. Essayez cela fonctionne comme un charme :)

Salut, je ne suis pas sûr, mais je pense que j'ai essayé toutes les solutions que je peux trouver sur ce problème. Je suis totalement nouveau sur Flutter et je n'exécute que les projets de test de base. Tout fonctionnait comme un charme jusqu'à ce que j'essaie de démarrer l'application sur mon iPhone et que je doive entrer des informations dans le "xcode Runner". Avant cela, sur un appareil Android et dans le simulateur, cela fonctionnait bien.

Maintenant, cela produit différentes erreurs, mais la plupart du temps, je me retrouve avec le problème "Flutter/flutter.h" introuvable. (La seule chose qui fonctionne maintenant est de fonctionner sur un téléphone Android) S'il vous plaît, aidez-moi avec cette erreur, j'ai mis plus d'une journée de travail pour résoudre ce problème. Supprimé tous les projets, désinstallant Cocopods et le réinstallant, essayant différentes versions et ainsi de suite. Rien n'y fait, Et oh, le docteur Flutter est heureux comme toujours.

Salut, @Pergius , la solution de contournement qui a fonctionné pour moi a également été décrite sur ce lien (https://github.com/flutter/flutter/issues/24428#issue-381497805).
Lors de la copie des fichiers dans le dossier ios-release, Flutter build ios fonctionnait.
Cependant, je pense qu'il y a un bug qui doit être corrigé.

J'ai eu le même problème. Fichier Esys-share.h introuvable .. aidez-moi à résoudre ce problème

Pour tous ceux qui ont également des problèmes avec le Flutter.h introuvable, vérifiez votre version de Flutter. J'avais la version 1.4 Flutter et je l'ai désinstallée, puis j'ai installé la version stable (1.2) et cela a fonctionné.

Pour tous ceux qui ont également des problèmes avec le Flutter.h introuvable, vérifiez votre version de Flutter. J'avais la version 1.4 Flutter et je l'ai désinstallée, puis j'ai installé la version stable (1.2) et cela a fonctionné.

Merci, cela fonctionne pour moi.

Je vis cela sur l'une de nos machines de construction. J'ai essayé de réinstaller Flutter, de passer au canal stable, de m'assurer que Cocopods est la même version que sur les machines de travail et à peu près toutes les autres solutions suggérées. Le seul succès temporaire que j'ai eu est avec le correctif de yxfmlbb dans https://github.com/flutter/flutter/issues/24428. Les fichiers d'en-tête Flutter.framework sont remplacés par des alias qui ne mènent nulle part lorsque j'exécute build --release, et après cela, la build iOS échoue avec le fichier Flutter.h introuvable.

Je peux seulement supposer que je n'ai pas complètement réinstallé Flutter. Que dois-je faire d'autre à part supprimer le répertoire d'installation de Flutter ?

Edit: cela semble être un problème Jenkins étrange car l'exécution des mêmes commandes à partir du terminal n'écrase pas les fichiers d'en-tête avec des raccourcis.

J'espère que cela aidera quelqu'un ->

J'ai corrigé ce problème en effectuant une installation de pod dans mon projet iOS.

Il semblait que cela était dû à la mise à jour du flutter, puis à l'obsolescence du podspec pour le flutter.

J'ai commencé à recevoir cette erreur après avoir effectué une mise à jour flottante et ajouté des préférences partagées à mon projet. Je viens d'essayer de supprimer tous les éléments de shared_preferences, même de pubspec.yaml, de supprimer le dossier ios et d'exécuter "flutter create ". et maintenant, lorsque j'essaie de créer/exécuter sur le simulateur ios, j'obtiens :

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)

et au cas où ça t'aiderait :

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

décochez ces deux cases lorsque vous créez un nouveau projet flutter, cela fonctionne pour moi.
WhatsApp Image 2019-09-16 at 5 56 16 AM

Je viens de rencontrer le même problème. J'ai supprimé les fichiers pod actuels et le dossier pod que j'avais, réinstallé Cocopods, réexécuté l'application et le problème a été résolu

Pour moi, cela a été résolu en modifiant le fichier pod comme mentionné par ce https://github.com/flutter/flutter/issues/10654#issuecomment -389034245 et en changeant le système de construction de xcode en ancien.

J'ai résolu le problème en flutter create un nouveau projet et copie le code de la clé.

mon pod --version est 1.6.0

J'utilise le canal flutter stable v1.12.13+hotfix.6

J'ai créé une nouvelle application avec flutter create my_app , j'ai tout supprimé de ios/Flutter dans ma propre application et j'ai tout copié de my_app/ios/Flutter dans ma propre application. Ça a marché :/

Ce fil a été automatiquement verrouillé car il n'y a eu aucune activité récente après sa fermeture. Si vous rencontrez toujours un problème similaire, veuillez ouvrir un nouveau bogue, y compris la sortie de flutter doctor -v et une reproduction minimale du problème.

Cette page vous a été utile?
0 / 5 - 0 notes