J'essaie de faire une application qui lit le pdf en utilisant le kit pdf dans Xcode 4.3, mais cela me donne l'erreur suivante
ld: duplicate symbol _OBJC_METACLASS_$_OverlayManager in /Users/dt4it/Library/Developer/Xcode/DerivedData/MyPdf4-bmkjglhhvneluqcbwpceiqjvdcmq/Build/Intermediates/MyPdf4.build/Debug-iphonesimulator/MyPdf4.build/Objects-normal/i386/OverlayManager-D0866CFD31A05E68.o and /Users/dt4it/Library/Developer/Xcode/DerivedData/MyPdf4-bmkjglhhvneluqcbwpceiqjvdcmq/Build/Intermediates/MyPdf4.build/Debug-iphonesimulator/MyPdf4.build/Objects-normal/i386/OverlayManager-B31AE7412100AF6D.o for architecture i386
Command /Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
toute aide s'il vous plaît ??
Paramètres du projet> Sous "Cibles", sélectionnez votre projet> Phases de construction> ouvrez "Compiler les sources" et "Copier les ressources du paquet". Vérifiez si des fichiers sont listés en rouge. Si oui, supprimez-le simplement. Puis nettoyez et courez.
Travaillé pour moi.
Faites un nettoyage. product > clean
. La purge et le redémarrage de terminaux ne fonctionnaient pas pour moi, le nettoyage en faisait autant.
J'ai eu la même erreur et personne ne semble avoir de réponse à StackOverflow qui fonctionne réellement. Mon problème était lorsque j'ai essayé de copier un projet qui se trouvait dans un référentiel d'équipe. Il s'avère que, dans le fichier ignore, tous les fichiers portant l'extension *.pch
ont été ignorés des commits de référentiel. Cela signifie que lorsque je suis allé extraire le projet du référentiel, le .pch
fichier était manquant, générant ainsi cette erreur.
Heureusement, j'avais encore une copie du projet et je pouvais simplement copier le .pch
fichier terminé et j’ai alors pu compiler très bien.
J'espère que cela t'aides?
Accédez aux préférences de la cible, onglet récapitulatif, recherchez "Cible de déploiement" et augmentez-la.
Je fais face à ce problème aussi. Et bien sûr, j'ai cherché de l'aide dans SO au lieu d'utiliser le bon sens et de vérifier le message d'erreur.
La dernière partie du message d'erreur était la même que vous.
Command /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 11
Mais quelques lignes ci-dessus, j'ai trouvé:
In file included from /Users/Ricardo/Documents/XCode/RealEstate-Finder-v1.2/RealEstateFinder/RealEstateFinder/RealEstateFinder-Prefix.pch:26:
/Users/Ricardo/Documents/XCode/RealEstate-Finder-v1.2/RealEstateFinder/RealEstateFinder/Config/Config.h:174:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
http://www.myserver.com/apps/mobile/rest.php?id=12
Ce qui pointe vers mon fichier Config.h.
Bonne codage!
Ce problème se produit généralement lorsque plus de deux versions de XCode sont installées et dans lesquelles différentes versions Swift incorporées pour Ex. XCode 6.4 et XCode 7.3 sont en cours d’exécution Swift 1.2 et Swift 2.0. Par erreur, vous essayez de compiler du code avec la version correcte pour Ex. Votre projet dans Swift 1.2 et vous essayez de compiler avec xcode 7.3. Dans ce cas, les données de disque stockent les informations pour Swift mais lorsque vous essayez de compiler le code avec le code X correct, cela donne une erreur. Pour résoudre cela
Vous avez accidentellement inclus le fichier .m OverlayManager au lieu du fichier .h dans la classe OverlayManager elle-même! En gros, le compilateur sait déjà compiler le fichier .m, mais lorsque vous l'importez, il tente de l'inclure en ligne avec le même fichier source, générant ainsi des symboles en double. Mais votre cas est unique, puisque vous importez le fichier .m du fichier .m de la classe actuelle! C'est compiler de manière récursive votre classe OverlayManager.
Essayez ceci - cliquez sur le nom de votre projet dans la liste des fichiers/dossiers à gauche dans Xcode (tout en haut de la liste). Regardez la section "Cibles" sur le côté gauche de la fenêtre à droite. Probablement, il y en a deux listés, le second étant un "test". Faites un clic droit sur cet élément et sélectionnez "supprimer". Ensuite, essayez de réexécuter le projet.
Pour moi, cette erreur apparaît après le clonage du projet depuis un référentiel. Quelqu'un a supprimé un espace du nom du projet (renommé "The Project" en "TheProject"), ce qui a provoqué des Build Settings
erreurs sur des chemins non valides.
Parfois, lire tout le journal des erreurs n’est pas une mauvaise idée.
La même chose m’est arrivée et j’ai trouvé que j’avais oublié de mettre le "à la fin du
#import "CPDConstants.h
donc au lieu
#import "CPDConstants.h"
supprimer ~/Library/Developer/Xcode/DerivedData
m'a aidé.
référence: lien
Mon problème était que, sous Build Phases -> Compile Sources, j'avais ajouté un indicateur de compilation pour un fichier, mais je l'avais mal orthographié. Il était censé être:
-fno-obj-arc
pour montrer que ce fichier n'utilise pas ARC.
Mon cas, je le fixe en:
Allez dans phases de construction et vérifiez les fichiers sources de compilation, vérifiez s'il contient le fichier dupliqué, n'en gardez qu'un.
Xcode 8
@ Spoek réponse a raison,
Mais si vous ne trouvez pas le fichier en couleur rouge , recherchez celui qui présente une opacité faible,
voir cette image,
Le premier est là, mais le second est indiqué, supprimez-le.
L'ajout des fichiers manquants (fichiers de couleur rouge dans Xcode-> target-> Build Phases-> sources compilées) dans le dossier cible a résolu le problème pour moi.
La chose à considérer ici est le fichier * .pch. Si vous faites une inclusion depuis une bibliothèque externe, vous devez vous assurer que vous la faites après #ifdef OBJC et avant #endif. Si vous essayez de faire votre inclusion en dehors de cette condition, cela pourrait être une cause de l'erreur du compilateur.
Moi aussi j'ai eu cette erreur. Mais dans mon cas, et je suis sûr que je ne serai pas unique, j’avais accidentellement supprimé le fichier principal lorsque je tapais sur la touche de suppression après le blocage de l’application sur le simulateur de l’iPhone.
Après un blocage, Xcode affiche le fichier main.m et, lorsque j’ai appuyé sur delete, j’ai accidentellement supprimé le fichier main.m de mon projet, car il est facile à faire lorsqu’un nom de fichier est mis en surbrillance et non le code dans le détail. vue.
Main.m réside normalement dans un groupe ou un dossier nommé fichiers de support dans le gestionnaire de fichiers du projet. Je n'avais pas remarqué que c'était ce qui s'est passé jusqu'à ce que la construction et l'exécution échouent, puis j'ai dû relire le message d'erreur de plus près et l'ai vu dire que main.m était manquant.
Merci à tous pour votre contribution, mais juste au cas où quelqu'un à ma position vérifie les noms de fichiers en rouge indiquant les fichiers manquants et les restaure à partir d'une sauvegarde, le cas échéant.
Peut-être que cela sera utile pour quelqu'un: J'ai eu la même erreur après la suppression de plusieurs fichiers du projet. Après avoir supprimé les modifications dans le référentiel git, cette erreur a disparu ...
Dans mon cas, c'était un doublon Swift Flag
entrée dans les paramètres de construction de ma cible> Autre Swift Drapeaux. J’avais deux -Xfrontend
entrées.
Si cela s'était passé dans une équipe utilisant git. Un des membres de l'équipe a ajouté une classe à partir d'une source externe mais ne l'a pas copiée dans le répertoire repo. La version locale a été correctement compilée, mais l'intégration continue a échoué avec cette erreur.
La réimportation des fichiers et leur ajout au répertoire sous contrôle de version ont corrigé le problème.