115 votes

symbole (s) introuvable (s) pour l'architecture i386

En essayant de compiler avec Xcode, j'obtiens l'erreur suivante:

   **Ld /Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator/iKosher.app/iKosher normal i386
    cd /Users/doronkatz/Sites/xCode/iKosher
    setenv MACOSX_DEPLOYMENT_TARGET 10.6
    setenv PATH "/Xcode4/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Xcode4/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Xcode4/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Xcode4/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk -L/Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator -L/Users/doronkatz/Sites/xCode/iKosher -F/Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator -filelist /Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Intermediates/iKosher.build/Debug-iphonesimulator/iKosher.build/Objects-normal/i386/iKosher.LinkFileList -mmacosx-version-min=10.6 -all_load -ObjC -Xlinker -objc_abi_version -Xlinker 2 -lz -framework Security -framework CFNetwork -framework CoreData -framework Foundation -framework UIKit -framework CoreGraphics -framework QuartzCore -o /Users/doronkatz/Library/Developer/Xcode/DerivedData/iKosher-bphnihrngmqtkqfgievrrumzmyce/Build/Products/Debug-iphonesimulator/iKosher.app/iKosher

Undefined symbols for architecture i386:
  "_UTTypeCreatePreferredIdentifierForTag", referenced from:
      +[ASIHTTPRequest mimeTypeForFileAtPath:] in ASIHTTPRequest.o
  "_UTTypeCopyPreferredTagWithClass", referenced from:
      +[ASIHTTPRequest mimeTypeForFileAtPath:] in ASIHTTPRequest.o
  "_kUTTagClassMIMEType", referenced from:
      +[ASIHTTPRequest mimeTypeForFileAtPath:] in ASIHTTPRequest.o
  "_kUTTagClassFilenameExtension", referenced from:
      +[ASIHTTPRequest mimeTypeForFileAtPath:] in ASIHTTPRequest.o
  "_SCNetworkReachabilitySetCallback", referenced from:
      -[Reachability startNotifier] in Reachability.o
  "_SCNetworkReachabilityScheduleWithRunLoop", referenced from:
      -[Reachability startNotifier] in Reachability.o
  "_SCNetworkReachabilityUnscheduleFromRunLoop", referenced from:
      -[Reachability stopNotifier] in Reachability.o
  "_SCNetworkReachabilityCreateWithName", referenced from:
      +[Reachability reachabilityWithHostName:] in Reachability.o
  "_SCNetworkReachabilityCreateWithAddress", referenced from:
      +[Reachability reachabilityWithAddress:] in Reachability.o
  "_SCNetworkReachabilityGetFlags", referenced from:
      -[Reachability currentReachabilityStatus] in Reachability.o
      -[Reachability isReachable] in Reachability.o
      -[Reachability isConnectionRequired] in Reachability.o
      -[Reachability isConnectionOnDemand] in Reachability.o
      -[Reachability isInterventionRequired] in Reachability.o
      -[Reachability isReachableViaWWAN] in Reachability.o
      -[Reachability isReachableViaWiFi] in Reachability.o
      ...
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status**
 

Pas sûr de ce que ça signifie.

64voto

Nir Pengas Points 866

Parfois, il existe des fichiers sources qui ne figurent pas dans votre cible.

  1. examiner quels symboles sont manquants
  2. target-> build phases-> compiler source
  3. Ajouter les fichiers source manquants s'ils ne sont pas répertoriés
  4. commande + b pour le bonheur

Vous pouvez sélectionner les fichiers qui semblent "manquants" et vérifier dans la barre de l'utilitaire de droite que leurs cases à cocher sont sélectionnées pour la cible que vous créez.

50voto

epatel Points 32451

Vous utilisez ASIHTTPRequest, vous devez donc configurer votre projet. Lisez la deuxième partie ici

http://allseeing-i.com/ASIHTTPRequest/Setup-instructions

33voto

Pruthvid Points 441

Salut Si je suis en retard j'ai pensé que cela pourrait être utile. Je l'ai résolu en utilisant la méthode suivante. (pour XCode 4)

1) Sélectionnez le projet dans le projet de navigation de la fenêtre qui affichera résumé du projet sur la droite

2) Sélectionnez le 4ème onglet phases de construction

3) Sélectionnez le Lien binaire de la bibliothèque à l'option

4) Ajouter un cadre pour laquelle vous obtenez des

5) Déplacer le cadre de dossier principal pour le dossier frameworks

6) Construire à nouveau et les erreurs ont disparu.

Espérons que cela aide :)

17voto

justinkoh Points 634

Pensé à ajouter ma solution pour ce faire, après avoir passé quelques heures sur la même erreur :(

Le gars ci-dessus ont été correcte que la première chose à vérifier est de savoir si vous aviez manqué l'ajout des cadres, voir les étapes fournies par Pruthvid ci-dessus.

Mon problème, il s'est avéré, était une compilation de la classe manquante après je l'ai supprimé, et plus tard ajouté ça à nouveau.

Vérifiez votre "Compiler des Sources", comme indiqué pour les classes d'erreur. Ajouter dans toutes les classes manquantes que vous avez créé.

Xcode 4.3.1 Compile Sources

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