iOS, le fichier a été construit pour les archives, qui n'est pas l'architecture (i386)
J'ai eu un peu de bibliothèques statiques, que je veux utiliser mon iphone. Lorsque j'essaie d'exécuter le simulateur-je obtenir reliant errrors.
Je suis nouveau sur le développement d'iOS, et j'ai rencontré ce problème lors de la liaison à l'encontre des bibliothèques, j'ai construit précédemment;
file was built for archive which is not the architecture being linked (i386)
Ce qui signifie que toutes les fonctions que j'référence à partir de ces bibliothèques me donne ceci:
undefined symbols for architectyre i386
Je ne suis pas sûr de ce que pour configurer à faire de ce droit. Les bibliothèques statiques sont à construire pour armv7, supporteed plates-formes armv6 armv7.
Il semble que les bibliothèques ne sont pas compatibles avec le simulateur, ils n'ont pas été construits pour i386. Test sur un appareil ou si le code de la bibliothèques est disponible pour vous, de le reconstruire, y compris l'architecture i386
Oui j'ai eu le code, comment puis-je spécifier de construire pour l'architecture i386 aswell? En ce moment; "Architectures : Standard(armv7)", "Valide Architectures : armv6 armv7", "Construire Active Seulement l'Architecture : non"
Pas certain aujourd'hui... Ajouter i386 valide de l'architecture?
Quelqu'un a une solution pour cela? Je suis confrontée au même problème.
Oui j'ai eu le code, comment puis-je spécifier de construire pour l'architecture i386 aswell? En ce moment; "Architectures : Standard(armv7)", "Valide Architectures : armv6 armv7", "Construire Active Seulement l'Architecture : non"
Pas certain aujourd'hui... Ajouter i386 valide de l'architecture?
Quelqu'un a une solution pour cela? Je suis confrontée au même problème.
OriginalL'auteur KaiserJohaan | 2011-10-24
Vous devez vous connecter pour publier un commentaire.
J'ai trié un très semblables d'erreur avec une bibliothèque statique, j'ai été la construction pour l'iPad. Je crois que ma solution était d'ajouter "i386" pour les Architectures de réglage pour le projet (Cliquez sur le Projet -> Build Settings -> Architectures-ou était-elle Valide les Architectures?-- et cliquez sur l'icône"+", tapez "i386" dans la ligne en surbrillance). Anywho qui devraient vous permettre de fermer.
Oh, encore une mise en garde, j'ai lu que l'on doit régler "Construire Active Seulement l'Architecture" à "Non". Il a déjà commencé pour moi, mais c'est quelque chose que vous pourriez vouloir vérifier.
OriginalL'auteur Ed Gonzalez
Après avoir lutté avec ce même problème et en suivant toutes les réponses acceptées de mise à jour des paramètres de construction, de compensation de l'éditeur de liens chemin de recherche, etc.. j'ai enfin trouvé la réponse qui a fonctionné pour moi.
Avant de construire, assurez-vous que vous sélectionnez le type de droit (Simulateur d'iPhone) au lieu de l'Appareil iOS. Puis reconstruire. Sinon, vous essayez d'utiliser une bibliothèque construite pour un appareil iOS (processeur arm) sur un simulateur (i386). Si j'ai été évident, mais ne l'était pas.
Avant:
Après:
Maintenant, regardez dans le groupe des Produits dans le Navigateur > clic droit de votre bibliothèque statique (.un fichier) > Afficher dans le Finder, vous remarquerez que ses dans un Debug-iphonesimulator dossier au lieu de Debug-iphoneos. Je n'ai pas fait attention pour le nom du dossier d'origine, ou je pourrais avoir pensé à cela plus tôt.
Espère que cette aide.
OriginalL'auteur Cody A. Ray