Cependant, j'ai recompilé le framework en utilisant le même Xcode et cela me donne toujours cette erreur.
- SDK de base iOS 11.1 pour les deux
- Swift Language Version Swift 4.0 pour les deux
- Ne pas utiliser de pods / Carthage
J'espère que quelqu'un pourrait savoir
Réponses:
Mettre à jour:
Pour les versions de lancement de Xcode:
Cette erreur (et des erreurs similaires impliquant Swift 4.1, 4.2, etc.) se produira lors de l'ouverture d'un projet avec Xcode 9.1, 9.2, 9.3, 9.4, 10, etc. qui utilise des frameworks qui ont été construits avec des outils Xcode antérieurs.
Pour résoudre le problème, mettez à jour et reconstruisez vos frameworks en utilisant Carthage (
carthage update --platform iOS
), Cocoapods (pod update
oupod install
), ou manuellement, avec les nouveaux outils Xcode mis à jour. Les outils doivent être mis à jour automatiquement lorsque vous mettez à jour Xcode, mais sinon, vous pouvez suivre les étapes décrites ci-dessous dans la réponse d'origine.Vous devrez peut-être également nettoyer votre projet
cmd + shift + k
et éventuellement votre dossier de constructioncmd + option + shift + k
pour que Xcode n'utilise pas les versions de framework mises en cache.Dans certains cas, vous devrez peut-être également supprimer votre dossier de données dérivées (facilement trouvé en allant dans Préférences Xcode -> Emplacements -> Dossier de données dérivées ( Merci Stunner )
Pour les versions bêta de Xcode:
Voir la réponse originale ci-dessous, puis suivez les étapes ci-dessus.
Réponse originale:
Vous avez probablement toujours vos outils xcodebuild réglés sur Xcode 9.0 qui se construit avec Swift 4.0 et est incompatible avec Swift 4.0.1 de Xcode 9.1 beta.
Enregistrez-vous dans le terminal à l'aide de la commande:
Ou allez simplement dans les préférences Xcode -> Emplacements et vérifiez / changez les outils de ligne de commande en Xcode 9.1. Vous devriez être prêt alors.
la source
Swift Language Version
àSwift 4
pour ceux-ci. Ensuite, cela a fonctionné.Mon problème était dû au fait qu'un cadre externe n'était pas compilé pour Swift 4.0.2. J'avais ajouté ce fichier via Carthage , donc en cours d'exécution:
Ensuite, nettoyer le
cmd + shift + k
dossier de projet et de constructioncmd + option + shift + k
et supprimer le dossier de données dérivé (le simple fait de le déplacer vers la corbeille fonctionne également) a fonctionné pour moi.la source
Dans mon cas, j'ai téléchargé la version bêta de xCode 11 pour tester SwiftUI. Lorsque j'exécute mon projet, j'ai eu l' erreur "Le module compilé avec Swift 5.1 ne peut pas être importé par le compilateur Swift 5.0.1: ..." .
Pour résoudre ce problème. J'ai changé l'outil de ligne de commande xCode en nouvel outil de ligne de commentaire xCode 11. Après cela, vous pouvez créer un nouveau projet xcode avec SwiftUI.
Xcode -> Préférences -> Emplacement -> Outil de ligne de commande XCode
j'espère que cela aidera quelqu'un qui veut tester avec un nouveau travail :)
la source
Installez Xcode Toolchain de la version Xcode spécifique qui fonctionnait pour vous à partir d' ici .
Une chaîne d'outils Xcode comprend une copie du compilateur, de lldb et d'autres outils connexes nécessaires pour fournir une expérience de développement cohérente pour travailler dans une version spécifique de Swift.
Ouvrez les Préférences de Xcode, accédez à Composants> Chaînes d'outils et sélectionnez la chaîne d'outils Swift installée.
Cela vous permettra de compiler et d'exécuter l'application pour le moment.
la source
J'ai rencontré ce problème avec Xcode 10 beta, qui ajoute Swift 4.2. Mon problème n'était pas lié à Carthage ou à des dépendances externes.
Accédez à
YourTarget > Build Settings > Swift Language Version
toutes vos cibles Xcode.Les miens étaient tous prêts
Swift 4
.Après avoir ajouté une phase de construction de fichiers de copie, j'ai commencé à recevoir l'erreur
J'ai ensuite défini chaque objectif
Swift Language Version
surSwift 4.2
, ce qui a éliminé l'erreur.Je ne sais pas pourquoi l'erreur s'est produite en premier lieu, car toutes les cibles
Swift 4
devraient être tout aussi valides.la source
Build Settings
Dans mon cas (Xcode 9.2):
Je suis allé à Xcode
Preferences > Locations > Derived Data
J'ai ensuite supprimé les données et fait une construction propre et tout allait bien.
la source
Dans mon cas, j'ai utilisé CocoaPods avec plugin
cocoapods-binary
pour préconstruire les bibliothèques en binaires. Après avoir mis à niveau Xcode de 10 à 11, Xcode me donne cette erreur:Je le répare en supprimant le
/Pods
répertoire et en courantpod install
.la source
Dans mon cas, j'ai recompilé le framework avec la version dont il se plaignait.
Pour recompiler, exécuter
pod update
ou mettre à jour le carthage (celui que vous utilisez) et construire le projet.Recherchez ensuite le cadre dans le Finder. Copiez-collez le
theFramework.framework
dans votre projet et assurez-vous de "Copier les éléments si nécessaire". Générez à nouveau le projet et cela devrait fonctionner.la source