2010-08-18 16 views
2

J'ai ajouté les frameworks (MapKit et CoreLocation) en sélectionnant le dossier Frameworks, en faisant un clic droit, Ajouter> Frameworks existant.MapKit ne fonctionne pas sur le périphérique mais fonctionne dans le simulateur

L'application builds dans le simulateur (3.1.3), mais échoue sur le périphérique (3.1.3) avec l'erreur:

ld: warning: in /Development/Sites/iPhone Projects/SwitchViews/MapKit.framework/MapKit, file is not of required architecture Undefined symbols:
"_OBJC_CLASS_$_MKPinAnnotationView", referenced from: [email protected] in NextView.o ld: symbol(s) not found collect2: ld returned 1 exit status

Répondre

2

Il semble que je devais juste redémarrer Xcode pour que les choses soient correctement connectées.

0

Il semble que vous par hasard ont choisi la « copie au projet » case à cocher lors de l'ajout du cadre. Essayez de supprimer l'infrastructure de votre projet et ajoutez-la à nouveau, en vous assurant que vous avez sélectionné le chemin d'accès par défaut de la structure et que vous ne le copiez pas dans votre projet.

+0

Où est cette option Claus? Je ne peux pas le voir. Je connais la fonctionnalité lorsque vous ajoutez, disons, une image - mais c'est une manière différente. – daidai

+0

Hmmm ... vous avez probablement raison - cela ne s'applique qu'aux non-frameworks que vous ajoutez. Cependant le "ld: warning ..." indique qu'il essaie de se lier à un framework local et pas à un dans le SDK –

+0

le chemin est System/Library/Frameworks/MapKit.framework le chemin complet est/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.1.3.sdk/Système/Bibliothèque/Frameworks/MapKit.framework le type de chemin est relatif au SDK actuel Y at-il quelque chose de mal à cela? – daidai