xcode 4.5 - les symboles ne trouve pas pour l'architecture i386 (zbar)
J'ai un projet qui utilise le zbar-sdk (un code à barres de numérisation de la bibliothèque).
Après la mise à jour de ma machine à xcode 4.5 et ios6sdk je vais avoir quelques problèmes.
J'ai été en mesure de construire le simulateur, sans toucher quoi que ce soit à propos de mon projet. C'est en utilisant les dernières zbar 1.2 la bibliothèque.
J'ai ensuite voulu construire mon ios6 appareil pour le test, et c'est quand j'ai eu une erreur.
Après quelques recherches sur google sur le zbar developer forum, j'ai vu que je devais obtenir le zbar source et de construire la libzbar.un pour armv7 et armv7s que cela n'a pas encore été fait par le zbar développeur.
Voir - http://sourceforge.net/projects/zbar/forums/forum/1072195/topic/5728912
J'ai donc fait cela, la réimportation de la mise à jour libzbar.un dans mon projet. J'ai ensuite construit pour mon appareil, et cela a fonctionné! J'ai pu obtenir mon application sur mon test de l'appareil et de la zbar bibliothèque de codes-barres a bien fonctionné.
Je pensais que c'était la fin, mais malheureusement pas.
J'ai ensuite essayé de construire le simulateur (ios6) de nouveau, et c'est quand il échoue.
Peu importe ce que je ne peux pas obtenir ce projet de construire à la fois de l'appareil et simualtor dans le même temps et avec les mêmes paramètres 🙁
Mon libzbar.un projet de paramètres lors de la création de ma propre libzbar.un fichier:
Architecture: Standard (armv7, armv7s) $(ARCHS_STANDARD_32_BIT)
Construire Active Seulement L'Architecture: Pas De
Valide Architectures: armv7 armv7s
Et mon paramètres du projet (pour myapp):
Architecture: Standard (armv7, armv7s) $(ARCHS_STANDARD_32_BIT)
Construire Active Seulement L'Architecture: Pas De
Valide Architectures: armv7 armv7s
Base SDK: iOS6
iOS Cible de Déploiement: iOS 5.0
Et l'erreur en essayant de construire le simulateur:
ld: warning: ignoring file /Users/blah/iOS App/myapp/ZBarSDK/libzbar.a, missing required architecture i386 in file /Users/blah/iOS App/myapp/ZBarSDK/libzbar.a (2 slices)
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_ZBarReaderViewController", referenced from:
objc-class-ref in mycontroller.o
"_ZBarReaderControllerResults", referenced from:
-[mycontroller imagePickerController:didFinishPickingMediaWithInfo:] in mycontroller.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
J'ai essayé de modifier les libzbar.un projet de paramètres (par exemple, construire active de l'architecture définie sur "OUI"), mais présente seulement les résultats ni le simulateur ou de travail de l'appareil.
Le fait qu'il fonctionne sur l'appareil, mais pas le simulateur fait de moi chose est un peu bizarre architecture/réglage de projet à l'origine de ce.
Toute aide appréciée!
OriginalL'auteur woopsicle | 2012-09-23
Vous devez vous connecter pour publier un commentaire.
Je doute que cela soit le droit réponse, mais il a travaillé pour moi, j'ai compilé la nouvelle libzber.a l'aide d'architectures i386 armv6 armv7 armv7s, dans l'ordre, vous devez également spécifier valide les architectures comme les mêmes valeurs. Là encore, c'est ce qui a fonctionné pour moi avec une version récente j'avais besoin de sortir de A. S. A. P. les Deux sont trouvés dans la Cible -> Build Settings -> Architecures.
Noter également que: $(ARCHS_STANDARD_32_BIT) ont dû être retirés de l'paramètres.
OriginalL'auteur Holyprin
J'ai résolu un problème similaire par le réglage de l'iOS6 simulateur de l'architecture sous OTHER_LDFLAGS dans la Cible->Paramètres de construction.
J'ai oublié que j'avais un autre argument de ligne de commande séparée de la archituctures j'ai donc dû manuellement l'état du simulateur
OriginalL'auteur Capiright