Après avoir exécuté un pod install
à la base de mon projet, le message d'erreur suivant s'affiche:
CocoaPods n'a pas défini la configuration de base de votre projet car votre projet a déjà un jeu de configuration personnalisé. Pour que l'intégration de CocoaPods fonctionne, définissez les configurations de base de la cible
BluePlaquesLondonFramework
surPods/Target Support Files/Pods/Pods.debug.xcconfig
ou incluez lePods/Target Support Files/Pods/Pods.debug.xcconfig
dans votre configuration de construction.
Cela ressemble probablement à une question idiote, mais comment puis-je définir la configuration de base d'une cible?
https://github.com/seanoshea/BluePlaquesLondon/blob/ios8/Podfile est le fichier podfile qui est à l'origine de ce problème.
http://github.com/seanoshea/BluePlaquesLondon sur la branche iOS 8 est le fichier podfile en question si vous êtes curieux de voir à quoi ressemble le projet.
J'ai eu le même problème, mais dans Xcode 6.1.1 - ce qui a été résolu pour moi a été de changer le paramètre du fichier de configuration en None
pour les deux cibles liées aux pods, puis de relancer pod install
.
Le paramètre de fichier de configuration est trouvé en sélectionnant le projet (pas la cible), puis l'onglet Info.
Allez dans XCode et ouvrez les paramètres de votre projet et sous l'onglet Info, vous verrez "Configurations" où vous pouvez définir un fichier de configuration pour Debug et Release. Vous avez apparemment déjà défini ces paramètres sur une configuration personnalisée et CocoaPods veut/a besoin de vous pour utiliser la configuration de Pods.
Pas à pas
Info
rm -rf Pods/ Podfile.lock ; pod install
Une fois que vous avez autorisé pod install
à l'étape 7
à faire des choses magiques, vous pourrez peut-être utiliser une configuration personnalisée et modifier vos configurations.
Couru dans le même problème. Cela s'appuierait sur le simulateur mais pas sur mon appareil. Aucune des réponses n'a résolu ceci pour moi. Voici ce que j'ai fait en assemblant des réponses:
Modification de mon fichier de pods pour utiliser une cible spécifique:
target :MyProject do
pod 'AWSCognitoSync'
pod 'Facebook-iOS-SDK'
end
Ran pod installer
[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target `MyProject` to `Pods/Target Support Files/Pods-MyProject/Pods-MyProject.debug.xcconfig` or include the `Pods/Target Support Files/Pods-MyProject/Pods-MyProject.debug.xcconfig` in your build configuration.
Vous devez également vous assurer que vous n'avez pas de pod dans la racine de Podfile
, vous devez définir tous les pod utilisés dans de nombreuses cibles comme celle-ci:
def shared_pods
pod 'ReactiveCocoa', '~> 2.5'
end
target 'app' do
shared_pods
pod 'RestKit'
end
target 'tests' do
shared_pods
pod 'OCMock'
end
Vous devrez peut-être également supprimer libPods.a
et libPods-app.a
des dépendances cibles, effectuer un nettoyage, puis réexécuter pod install
.
Je viens de rencontrer ce problème après avoir ajouté des configurations de construction personnalisées. Je pouvais voir ci-dessous:
Pods (target) > Target Support Files > Pods
qu'il avait créé les nouveaux fichiers xcconfig
correspondant aux nouvelles configurations de construction, mais pour une raison quelconque, je ne pouvais pas les sélectionner dans la cible de projet de mon application.
Ce qui a résolu le problème pour moi était d'installer et d'utiliser cocoapods-deintegrate :
gem install cocoapods-deintegrate
puis lancez:
pod deintegrate
suivi par:
pod install
La ligne dans le podfile qui génère un problème est: link_with ['BluePlaquesLondon', 'BluePlaquesLondonFramework'].
Faites juste ceci: link_with ['BluePlaquesLondon'] ou ceci (cela a fonctionné dans mon cas, espérons que ce sera le cas dans le vôtre :-)):
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
xcodeproj 'BluePlaquesLondon.xcodeproj'
inhibit_all_warnings!
link_with ['BluePlaquesLondon']
def import_pods
pod 'TTTAttributedLabel', '~> 1.10.1'
pod 'GoogleAnalytics-iOS-SDK', '~> 3.0.9'
pod 'Google-Maps-iOS-SDK'
pod 'IntentKit'
pod 'HCViews'
pod 'SVProgressHUD', :head
pod 'iRate'
pod 'iOS-KML-Framework', :git => 'https://github.com/FLCLjp/iOS-KML-Framework.git'
end
import_pods
target "BluePlaquesLondonFramework" do
import_pods
pod 'Kiwi'
end
Si vous avez ajouté une configuration de construction personnalisée à votre projet existant, Cocoapods s'en plaindra.
Cocoapods créera automatiquement des fichiers xcconfig dans le répertoire Pods/Target Support Files/<build_target>
en suivant le modèle de nommage Pods-<build_target>.<build_config>.xcconfig
.
Assurez-vous simplement d’ajouter manuellement ces fichiers à votre projet dans Xcode (sous le répertoire Pods, mais pas dans le projet Pods!). Une fois ces fichiers inclus, sélectionnez votre projet dans Xcode, accédez à l'onglet "Info" et développez votre configuration personnalisée. Sélectionnez le fichier xcconfig approprié pour chaque cible sous votre configuration personnalisée.
J'ai eu la même erreur lors de l'installation du pod. J'ai tout essayé (réinstaller le pod, mettre à jour toutes les gemmes, etc.) et j'ai trouvé la solution qui fonctionnait dans mon cas. Il y avait un problème en raison du changement de nom de la cible. Dans ce cas, la solution est simple:
Après tout, tout devrait fonctionner.
Pods/Target Support Files/[TARGET_NAME]/
(j'ai différents cocoapods configurés pour chaque cible (extension et projet principal, cela peut être légèrement différent dans votre cas)pod install
encore et vous ne devriez voir aucune erreur.J'ai déplacé des pods dans Podfile en dehors de la cible. Le fichier change de ceci:
# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks!
target 'MyProject' do
pod 'Firebase', '>= 2.5.0'
pod 'Onboard'
pod 'GoogleMaps'
pod 'IQDropDownTextField'
end
Pour ça:
# Uncomment this line to define a global platform for your project
# platform :ios, '8.0'
# Uncomment this line if you're using Swift
use_frameworks!
pod 'Firebase', '>= 2.5.0'
pod 'Onboard'
pod 'GoogleMaps'
pod 'IQDropDownTextField'
target 'MyProject' do
end
Donc, pour moi, le problème était dû au fait que les noms de fichiers xcconfig susmentionnés avaient été modifiés avant la mise à jour Swift 3.
Quelque chose n'était pas synchronisé, donc Cocoapods a créé une section de dossier "Références récupérées" avec les anciens fichiers nommés et liée à ceux-ci.
Pour résoudre ce problème, je:
Quitter Xcode
Lancer l'installation du pod
Après, tout a été géré pour moi et les avertissements ont disparu.
Si vous utilisez une configuration personnalisée, vous pouvez suivre la suggestion de l’avertissement et inclure la configuration du pod dans votre fichier de configuration.
#include "Pods/Target Support Files/Pods-YYY/Pods-YYYY.develop-archive.xcconfig"
Cela n'arrêtera PAS les avertissements mais vous permettra d'utiliser votre configuration privée (il y a un bogue ouvert sur l'avertissement avec le projet CocoaPods) https://github.com/CocoaPods/CocoaPods/issues/26
J'ai pu construire le projet touché par ce problème sur XCode 6 en:
J'espère que cela aidera quelqu'un.
Cela m'est arrivé parce que j'avais déjà une configuration Pod. Je suis nouveau sur le développement iOS, cherchant des instructions pour installer Alamofire + SwiftyJSON et finissant par installer les bibliothèques plus d'une fois, par inadvertance. Pour moi, ce qui a fonctionné a été: sur le dossier "Target Support Files" du projet "Pods", j'ai sélectionné les deux fichiers .xcconfig corrects et les ai fait glisser vers le dossier "Pods" de mon projet d'application. Cela a permis la sélection des fichiers de configuration corrects dans la configuration de base.
Mais ensuite, si je lance à nouveau "pod install", l'avertissement passera au fichier .xcconfig précédent. J'essaie de supprimer les fichiers et l'ancien framework du projet principal mais quand j'ai exécuté la commande précédente une fois de plus, m'a donné le même avertissement et créé le fichier "Pods.framework" dans le dossier "Pods" de mon projet d'application. Je l'ai ignoré et il semble fonctionner correctement, malgré les deux cadres. Je ne sais pas si c'est correct, et une solution, si elle existe, serait la bienvenue.
J'ai eu une erreur:
diff: /../Podfile.lock: Aucun fichier ou répertoire de ce type diff: /Manifest.lock: Aucune erreur de fichier ou de répertoire de ce type: le bac à sable n'est pas synchronisé avec Podfile.lock.
J'ai tiré la demande de bitbucket pour la première fois. J'ai nettoyé mon projet et tout essayé (installation de pod, mise à jour de pod, etc.) mais aucune des réponses ci-dessus n'a fonctionné pour moi. Ensuite, je vérifie simplement le chemin où j’installais le pod, puis je le corrige puis je l’installe à nouveau. Cela a fonctionné. Assurez-vous d’indiquer le chemin juste avant .xcodeproj ou .xcworkspace (s’il existe déjà). Peut-être que quelqu'un en profite.