La cible 'AAA-Pods' du projet 'Pods' a été rejetée en tant que dépendance implicite pour 'Pods_AAA.framework' car ses architectures 'x86_64' ne contenaient pas toutes les architectures requises 'i386 x86_64'.
Cela apparaît comme un avertissement, puis une erreur de l'éditeur de liens apparaît.
Solution possible:
Remarque: cette solution a résolu pour moi ce problème (avertissement et erreur de l'éditeur de liens).
Ressources suggérées:
Projet Github: https://github.com/CocoaPods/CocoaPods/issues/2053 Demande de retrait Github: https://github.com/CocoaPods/CocoaPods/pull/1352
Pour les futurs utilisateurs de Google: Assurez-vous également que votre podfile cible la même version iOS que votre projet:
Par exemple, si vous ciblez iOS 10.0 dans votre projet Xcode, votre podfile doit également inclure platform :ios, '10.0'
en haut.
Sur un tout nouveau projet sur Xcode 9.4.1, le problème était que la cible de déploiement de mon Podfile était définie sur platform :ios, '11.0'
alors que la cible de déploiement iOS de mon projet était définie sur 10.3.
Cela a amené le projet Pods généré à cibler iOS 11.0 (pris en charge uniquement par les périphériques 64 bits sur l’architecture arm64), mais comme mon projet principal cible 10.3 et inclut les périphériques armv7, cela ne fonctionne pas lors de l’archivage d’une version Release, car une version Release est également présente. construit des architectures non actives par nature (sauf si vous ne prenez en charge que les périphériques iOS 11).
La solution consiste alors simplement à modifier la cible de déploiement de Podfile pour qu'elle corresponde à celle de votre projet principal, dans mon cas, il s'agit de platform :ios, '10.3'
. Ensuite, exécutez pod update
et le projet Pods devrait être régénéré. Lancez Xcode, effectuez un nettoyage et vous devriez pouvoir exécuter le processus d’archivage.
Je me rends compte que cette question est un peu ancienne, cependant j'ai passé 2 jours à lutter contre le même problème juste après la mise à jour de XCode à 9.4. Ce que j'ai trouvé était dans le info.plist
sous la clé required device capabilities
armv7
était défini alors qu'il aurait dû être vide. J'espère que ça aide quelqu'un.
Une autre solution qui fonctionne pour moi.