web-dev-qa-db-fra.com

Erreur fatale Xcode 4.1: stdlib modifié depuis la création de l'en-tête précompilé

Créer une application iPhone en utilisant:

  • Xcode 4.1
  • SDK de base iOS 4.3
  • Apple LLVM Compiler 2.1

J'ai commencé à obtenir l'erreur suivante:

erreur fatale: le fichier '/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/../lib/clang/2.1/include/stdint.h' a été modifié depuis la création de l'en-tête précompilé

J'ai essayé de réinstaller Xcode et OS X - pas de chance. Qu'est-ce qui cause ça?

73
grfryling

Essayez d'abord une construction propre via le menu Produit -> Nettoyer (à partir de XCode 4.6.2).

Si cela ne fonctionne toujours pas, ouvrez l'Organiseur (dans le menu, sélectionnez Fenêtre-> Organiseur). Une fois l'Organiseur ouvert, sélectionnez Projets dans la barre d'outils en haut de la fenêtre. Sur la gauche se trouve une liste de projets, sélectionnez celui avec lequel vous rencontrez un problème.

Le panneau de détails (à droite de la liste) affichera le nom, l'emplacement et l'état du projet. La ligne en dessous qui montre où se trouvent les données dérivées. Cliquez sur le bouton Supprimer ... tout à droite. Une boîte de dialogue apparaîtra, cliquez sur Supprimer.

Vous pouvez également supprimer manuellement les données dérivées:

~/Library/Developer/Xcode/DerivedData/{project name + gobly-gook}

Ce répertoire contient les produits construits et les index du projet. Il est OK pour le supprimer car il ne contient que des éléments générés par Xcode. Xcode régénérera tout la prochaine fois que le projet sera ouvert.

153
logancautrell

J'ai pu le réparer de manière beaucoup plus simple, en choisissant simplement Product> Clean, puis Product> Build dans la barre de menus Xcode.

76
Darwin Smith II

La suppression du dossier DerivedData n'a pas fonctionné pour moi lors de l'archivage.

J'ai dû regarder Paramètres de construction - Emplacements de construction - Chemin de cache d'en-tête précompilé et supprimer ce dossier.

Pour moi, c'était:

/var/folders/_w/t0mj70hd1439tqgxff7_mtt00000gn/C/com.Apple.Xcode.501/SharedPrecompiledHeaders
37
Ants

J'ai pensé que j'ajouterais une réponse distincte plutôt qu'un commentaire à la réponse de Cryptognome, car il s'agit en fait d'une solution différente lorsque le problème vient de l'exécution de xcodebuild. Comme Cryptognome, j'ai eu l'erreur avec l'outil de ligne de commande xcodebuild. Au lieu de passer manuellement dans le /var sous-dossiers, j'ai trouvé que je pouvais définir mon propre cache pour le PCH partagé, ce que vous pouvez faire en définissant la variable d'environnement SHARED_PRECOMPS_DIR, par exemple comme suit

xcodebuild -target Foo -configuration Release SHARED_PRECOMPS_DIR=/tmp/foo/SharedPCH

De cette façon, je ne reçois jamais l'erreur dans les builds automatiques.

Remarque dans la commande ci-dessus, je définirais également généralement la variable d'environnement OBJROOT et SYMROOT env pour qu'elle soit également construite dans/tmp. À la fin, je nettoie les choses.

16
charles

L'outil de ligne de commande xcodebuild échoue parfois avec cette erreur. Cela m'est arrivé lorsque j'ai synchronisé un espace de travail svn avec une version antérieure. L'outil xcodebuild conserve ses en-têtes précompilés dans le dossier Ants mentionné:

/var/folders/... scrambled eggs .../-Caches-/com.Apple.Xcode.503/SharedPrecompiledHeaders/

Vous devez regarder dans la commande de construction elle-même pour voir le nom réel du dossier (-include/var/...), mais il peut en utiliser plusieurs si vous construisez pour différentes architectures (arm6, arm7, simulateur, par exemple). si vous rencontrez ce problème avec une génération de ligne de commande, supprimez simplement tout dans /var/.../SharedPrecompiledHeaders.

4
David Gish

Supprimez le contenu du Simulateur par Simulateur iOS> Réinitialiser le contenu et les paramètres ... et appuyez sur Repos. Cela supprimera toutes les instances précompilées existantes des en-têtes et des ressources. Cela a fonctionné pour moi

3
Sanjeev

Solution:

1) Produit-> Nettoyer

2) Produit-> Construire

Type d'erreur:

une sorte d'erreur de construction

Une des causes:

on aurait pu changer le fichier framework. Cela se produit parfois lorsqu'une modification est apportée à un framework dont dépend un autre framework. Le cache d'en-tête précompilé est désynchronisé et Xcode n'est pas en mesure de compiler le projet donné.

Un des scénarios:

on aurait pu choisir Aller à la définition et faire quelques changements après avoir sélectionné un contrôle de framework.

3
Durai Amuthan.H

J'ai pu me débarrasser de cette erreur simplement en nettoyant (commande + shift + K) et en reconstruisant.

1
Noah Dyer

J'ai surtout essayé mais sans utilité. Enfin, j'ai supprimé Xcode et réinstallé à nouveau. Maintenant ça fonctionne bien..

Xcode-> supprimer-> réinstaller

Cela pourrait aider quelqu'un ...

0

Clean les moyens ne fonctionnent pas pour moi, j'ai finalement résolu ce problème en réinstallant XCode.

0
Allen

J'ai eu cette erreur sur cordova lorsque j'ai couru: cordova run ios

fatal error: file '/Users/.../cordova/platforms/ios/CordovaLib/CordovaLib_Prefix.pch' has been modified since the precompiled header
  '/var/folders/gb/3cf6hy4x7z3d7hprls6xmd0m0000gr/C/com.Apple.DeveloperTools/6.0-6A313/Xcode/SharedPrecompiledHeaders/CordovaLib_Prefix-bfgesbulnxtdepfwgniffeysypgv/CordovaLib_Prefix.pch.pch' was built
note: please rebuild precompiled header
  '/var/folders/gb/3cf6hy4x7z3d7hprls6xmd0m0000gr/C/com.Apple.DeveloperTools/6.0-6A313/Xcode/SharedPrecompiledHeaders/CordovaLib_Prefix-bfgesbulnxtdepfwgniffeysypgv/CordovaLib_Prefix.pch.pch'
1 error generated.

** BUILD FAILED **    

The following build commands failed:
    CompileC build/CordovaLib.build/Debug-iphoneos/CordovaLib.build/Objects-normal/armv7/NSDictionary+Extensions.o Classes/NSDictionary+Extensions.m normal armv7 objective-c com.Apple.compilers.llvm.clang.1_0.compiler
    CompileC build/CordovaLib.build/Debug-iphoneos/CordovaLib.build/Objects-normal/armv7/CDVInvokedUrlCommand.o Classes/CDVInvokedUrlCommand.m normal armv7 objective-c com.Apple.compilers.llvm.clang.1_0.compiler

J'ai essayé avec clean et build mais ne fonctionne pas, j'ai finalement supprimé le dossier '/var/folders/gb/3cf6hy4x7z3d7hprls6xmd0m0000gr/C/com.Apple.DeveloperTools/6.0-6A313/Xcode' et ça marche! Cette astuce peut aider les autres

0
Crystian