Après avoir migré mon framework vers Xcode 10 beta (10L176w), j'ai commencé à recevoir des avertissements comme:
Mappage de l'architecture arm64 vers x86_64. Assurez-vous que les paramètres de construction des architectures et des architectures valides de cette cible sont correctement configurés pour la plate-forme iOS Simulator.
... et:
Mappage de l'architecture armv7 vers i386. Assurez-vous que les paramètres de construction des architectures et des architectures valides de cette cible sont correctement configurés pour la plate-forme iOS Simulator.
Malgré ces avertissements, la construction et les tests unitaires réussissent tous correctement. J'utilise Swift 4.2.
Pourtant, sur quoi portent ces avertissements?
ARCHS = $(ARCHS_STANDARD_64_BIT)
etVALID_ARCHS = $(inherited) x86_64 i386
Réponses:
Accédez aux paramètres de construction et procédez comme indiqué ci-dessous
la source
There are no valid architectures to compile for because the VALID_ARCHS build setting is an empty list
J'ai pu désactiver ces avertissements en modifiant mon paramètre Architectures valides pour
$(ARCHS_STANDARD)
lequel correspond également à mon paramètre Architectures .Curieusement, cela s'affichait comme
armv7 arm64
(par rapport au paramètre par défaut dearmv7 armv7s arm64
), mais le définir manuellement sur cette valeur provoquait toujours les avertissements. Je ne sais pas quelle est la signification de cela, mais je n'ai pas encore remarqué de problèmes lors de mes tests.la source
Vous avez probablement remplacé le paramètre de construction VALID_ARCHS ("Architectures valides"), que ce soit pour la cible ou pour son projet. Il s'agit d'un paramètre de construction qui devrait obtenir sa valeur automatiquement en fonction de la destination d'exécution pour laquelle vous créez. Lorsque vous déterminez d'où provient ce remplacement (le paramètre de construction s'affiche en gras lorsqu'il est remplacé), sélectionnez-le et appuyez sur la touche Suppr pour le restaurer à la valeur par défaut.
la source
VALID_ARCHS
. Il contientarm64
à la fois pour le débogage et la publication.VALID_ARCHS
pour le définir par défaut, puis nettoyer et fermer / ouvrir à nouveau Xcode pour qu'il fonctionne pleinement pour moiPour la cible qui signale des avertissements, modifiez le paramètre «Architecture valide» en:
$(VALID_ARCHS) x86_64
la source
Comme pour d'autres réponses, j'ai pu supprimer l'avertissement en remplaçant
$(VALID_ARCHS)
(Architectures valides) par$(ARCHS_STANDARD)
. À partir de là, j'ai effacé toutes les données dérivées et redémarré Xcode 10.0. Cela a fait disparaître complètement l'avertissement. Tout supprimer des architectures valides a fait apparaître un avertissement différent ("Aucune architecture valide trouvée").la source
La solution est plus simple: dans les architectures valides, remplacez simplement arm64 par x86_64 .
J'ai eu un problème similaire et les trois avertissements suivants dans mon projet:
Mes Archtectures valides étaient à l' origine
Remplacement:
(comme mentionné dans les avertissements) était ma solution. Le résultat dans le paramètre Architecture valide était:
Après les remplacements, mes trois avertissements ci-dessus ont disparu.
Des informations plus détaillées sur les architectures peuvent être trouvées ici: https://docs.elementscompiler.com/Platforms/Cocoa/CpuArchitectures/
Je pense que la formulation de cet avertissement dans Xcode est un peu confuse.
la source
Si vous rencontrez un problème dans Flutter:
Supprimez le Podfile, Podfile.lock, le dossier Pods, Runner.xcworkspace, Flutter.framework.
Courez
flutter clean
.flutter build ios
.la source
Je voyais cet avertissement lorsque j'ai essayé de compiler du code pour iOS et Mac OS. J'ai pu contourner le problème en faisant d'abord ce que Hassan Taleb a suggéré dans sa réponse: effacer les architectures afin que seules les architectures iPhone valides soient présentes. Et enfin, pour continuer à construire pour Mac OS, passez votre souris sur les architectures valides pour qu'un bouton plus apparaisse. Cliquez dessus et vous pourrez ensuite ajouter des paramètres distincts pour différentes plates-formes selon vos besoins, y compris différentes architectures de processeur. Pour le SDK macOS, je peux définir mes architectures valides sur uniquement x86_64 si je le souhaite.
la source
J'ai trouvé que le moyen le plus simple de résoudre ce problème était d'ouvrir le projet dans mon éditeur de texte, puis de rechercher et de supprimer toutes les
VALID_ARCHS
lignes.la source
Je suis également confronté au même problème. Pour la résolution, je viens de changer le système de construction de Standard à Legacy et cela a résolu le problème.
la source
J'ai vu le même avertissement que je construis mon cadre. Après un certain temps, j'ai remarqué que ces valeurs d'architecture valides varient en fonction du type de périphérique, quelles que soient les valeurs des paramètres de construction.
Real devices-> arm64 Simulator devices ->x86-64
la source
si vos [paramètres de construction] sont armv7 armv7s arm64, veuillez supprimer armv7s. l'avertissement sera annulé.
la source