115 votes

Faites du vélo à l'intérieur; bâtiment pourrait produire des résultats peu fiables: erreur Xcode 10

J'essaie de passer au nouveau système de compilation lors de la compilation avec Xcode 10. Cependant, cela donne l'erreur suivante:

 Cycle details:
→ Target 'project' : LinkStoryboards

Target 'project' has compile command with input '/Users/project/Commons/Components/ScreenshotSharing/ViewController/AppShare.storyboard'

Target 'project' : ValidateEmbeddedBinary /Users/project/Xcode/DerivedData/project-hgqvaddkhmzxfkaycbicisabeakv/Build/Products/Debug-iphoneos/project.app/PlugIns/stickers.appex

Target 'project' has process command with input '/Users/project/Resources/Info.plist'

Target 'project' has compile command with input '/Users/project/Commons/Components/ScreenshotSharing/ViewController/AppShare.storyboard'
 

Capture d'écran ajoutée

Même après avoir supprimé le fichier problème, j'obtiens la même chose pour un autre xib / storyboard. Comment puis-je résoudre cette erreur sans revenir au système de génération hérité?

57voto

akshay Points 3

Pour toute personne ayant un problème avec Xcode 10 de construction du système, suivez les étapes suivantes pour résoudre le problème:

  1. Dans Xcode, allez dans Fichier->Projet/paramètres d'espace de travail.
  2. Changer le système de construction pour de l'Héritage du système de construction.

Il permettra de résoudre la construction d'un problème avec la nouvelle Xcode.

Si vous voulez travailler avec le nouveau système de construction, alors vous pouvez trouver de l'aide pour le dépannage de cette apple Xcode page d'aide.

50voto

JAL Points 3432

J'avais ce problème avec Cocoapods. La solution consistait à nettoyer le dossier de build, à réinstaller tous les pods, puis à reconstruire l'application. Le problème s'est résolu de cette façon.

33voto

gypsyDev Points 452

J'ai résolu mon problème en déplaçant la phase de construction de «Copy Bundle Resources» avant toutes mes phases de construction de «Copy Files» et «Link Binary with Libraries»

25voto

gabuchan Points 325

J'avais ce problème avec Cocoapods et j'ai trouvé une solution temporaire:

  1. Installer la dernière version des cocoapods (1.5.3): sudo gem update cocoapods
  2. Supprimez vos données dérivées: rm -rf ~/Library/Developer/Xcode/DerivedData/*
  3. pod install

Source ici et je suis sur Xcode 10 beta 4.

EDIT : maintenant sur Xcode 10.0 et toujours d'actualité.

19voto

Rick Ballard Points 876

Xcode 10 du nouveau système de construction détecte la dépendance des cycles dans votre construction et fournit des diagnostics pour vous aider à les résoudre. La fixation de ces cycles de dépendance, qui améliore la fiabilité de votre construction, afin que les bons produits sont fabriqués de façon cohérente (les cycles sont une cause possible d'avoir besoin de supprimer vos données dérivées). Il améliore également votre différentiels temps de construire, comme les cycles de la construction de provoquer quelque chose dans votre construction graphique de toujours être à jour sur chaque construction, faire construire la re-faire travailler inutilement chaque fois que vous construisez.

Il y a de la documentation sur la résolution de certains types courants de dépendance cycles dans Xcode Aider: https://help.apple.com/xcode/mac/current/#/dev621201fb0

Cela dit, ce cycle de diagnostic semble un peu étrange. Ça sonne comme si vous étiez en mesure de le résoudre par une réorganisation de vos phases de construction, mais je ne pense pas que le diagnostic vraiment expliqué le problème. Si vous n'avez pas l'esprit, un rapport de bogue sur l'amélioration de ce diagnostic pour ce cas particulier pourrait être très apprécié. Vous pouvez déposer un à https://bugreport.apple.com. Veuillez inclure tous les détails à propos de votre projet que vous jugez pertinents; un exemple de projet qui reproduit le problème est idéal, mais si vous ne pouvez pas le joindre, le diagnostic et d'une certaine idée de la structure de projet est toujours utile.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X