2013-10-03 2 views
1

J'essaye de construire une bibliothèque statique sur xcode 5 et j'agrège les bibliothèques pour le simulateur d'iphone et le dispositif d'iphone pour créer un cadre. Mais, au dernier je reçois erreur "Aucune architecture à compiler pour (ARCHS = armv7, VALID_ARCHS = i386 x86_64)" lors de l'exécution du script d'exécution pour l'infrastructure. J'essaie de le compiler pour armv7 et armv7s tous les deux.Compiler le cadre avec armv7 et armv7s

S'il vous plaît aidez-moi à ce problème.

+0

Sauf si vous utilisez réellement la nouvelles instructions d'armv7s, vous n'en avez vraiment pas besoin du tout. Tout ce qu'il fait autrement vous signale dans le magasin comme "Optimisé pour l'iphone 5". Cela augmente la taille de votre binaire. – ahwulf

Répondre

2

Résolu le problème finalement. Dans mon cas, j'avais un projet dépendant pour mon projet de bibliothèque statique. Dans les paramètres du projet dépendant, le ARCH était armv7. J'ai fait cela à 'Architectures standard (armv7, armv7s)' et il a été compilé avec succès. Pour mon projet de bibliothèque statique, le réglage sont les suivantes:

Architectures: architectures standard (ARMv7, armv7s)

SDK de base: Les derniers iOS (iOS 7.0)

Construire Architectures actif uniquement: NO

Plates-formes supportées

: iphonesimulator iphoneos

Architectures valides: arm64 ARMv7 de l'i386

0

Voir What's the difference between "Architectures" and "Valid Architectures" in Xcode Build Settings?:

En bref, XCode utilisation intersection entre ARCHS et VALID_ARCHS, ce qui dans votre cas est vide comme 2 ont pas d'architecture commune (d'où l'erreur que vous obtenez) Ajout ARMv7 à VALID_ARCHS pourrait résoudre le problème.

+0

Dans mes paramètres xcode, j'ai ARCHS (armv7, armv7s) et VALID_ARCHS est (armv7, armv7s, arm64, x86_64, i386). Si je construis pour le simulateur alors cela fonctionne bien mais montrant l'erreur pour l'appareil. – chandvoid

+0

avez-vous défini 'build active architecture only' sur NO? Avez-vous trouvé le binaire généré dans votre répertoire de construction XCode? (Organisateur-> Projets, trouvez votre projet, puis cliquez sur la flèche de lien à côté de son dossier 'données dérivées', allez dans le dossier Build> Products, et voyez quels sont les binaires de votre bibliothèque) – Vinzzz

+0

'build active architecture only' réglé sur NO. J'ai vérifié le binaire qu'il est en train de créer lorsque le simulateur est sélectionné. Il crée comme prévu. Mais montrant une erreur lors de la construction pour le périphérique. Dans les paramètres de construction, ARCHS est 'Architectures standard (armv7, armv7s)'. Je n'ai aucune idée pourquoi il montre une erreur seulement pour l'appareil. – chandvoid

Questions connexes