Question Échec de l'émission d'un en-tête précompilé pour l'en-tête de pontage


J'ai téléchargé un projet à partir de GitHub, puis suivi les fichiers suivants, dont certains ont été écrits par OBJ-C et j'ai utilisé un en-tête de pont.

pod ‘SnapKit’
pod ‘MJRefresh’
pod ‘Alamofire’
pod ‘Kingfisher’
pod ‘MBProgressHUD’
pod ‘pop’
pod ‘EVReflection’
pod ‘StreamingKit’
pod ‘iCarousel’
pod ‘ReflectionView’

Lorsque je lance le projet avec Xcode 9.0 beta 2, mais malheureusement, le journal des erreurs se présente comme suit:

Erreur: Échec de l'émission d'un en-tête précompilé   '/var/folders/kd/4gh0_kxx3jx4thjb_sssmmcw0000gn/T/EvoRadio-Bridging-Header-97bd5f.pch'   pour ponter l'en-tête   '/Users/ringo/Downloads/EvoRadio-master/EvoRadio/Resources/EvoRadio-Bridging-Header.h'

J'ai googlé, mais pas un tel problème. L'erreur signifie qu'il a besoin d'un fichier PCH? C'est mon .pch configuration en-tête: enter image description here Il ne peut pas le résoudre.

Comment le faire?


15
2017-08-20 07:30


origine


Réponses:


J'ai aussi eu exactement le même problème (Xcode9 beta 6) après avoir ajouté des pods de cacao pour Données de base cryptées.
C'est mon PodFile:

# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
pod 'EncryptedCoreData', :git => 'https://github.com/project-imas/encrypted-core-data.git'

target 'Root' do
  # Comment the next line if you're not using Swift and don't want to use dynamic frameworks
  use_frameworks!

  # Pods for Root

  target 'RootTests' do
    inherit! :search_paths
    # Pods for testing
  end

  target 'RootUITests' do
    inherit! :search_paths
    # Pods for testing
  end

end

Solution:
1 j'ai ajouté $(inherited) non-recursive à Search Path -> Header Search Paths
2 Puis ajouté ${PODS_ROOT} recursive à Search Path -> User Header Search Paths
Les deux dans les paramètres de construction cible de mes projets.

S'il vous plaît jeter un oeil à ces réponses SO:
1 Héritage des chemins de recherche d'en-tête
2 chemins de recherche d'utilisateurs hérités


14
2017-08-25 09:30



Assurez-vous d’ouvrir l’espace de travail du projet, sinon le Podfile peut ne pas avoir toutes les ressources nécessaires pour compiler.

J'ai vu cette même erreur sur un projet qui fonctionnait bien auparavant.

J'ai découvert que j'avais accidentellement ouvert le ProjectName.xcodeproj fichier plutôt que le ProjectName.xcworkspace fichier. Ouvert le xcworkspace fichier et presto, le projet fonctionnait à nouveau!


6
2017-08-31 13:15



Vous pouvez essayer cette solution. J'ai résolu le même problème de cette manière.

  1. Cliquez d'abord sur le logo

Click on the logo

  1. Cliquez ensuite sur "Modifier le schéma":

Edit Scheme

  1. Maintenant, sous l'onglet build, cochez la case "Rechercher les dépendances implicites":

Find implicit dependencies

Ensuite, nettoyez et construisez à nouveau.


3
2017-11-02 09:24



Pour moi, ce problème est survenu lorsque j'ai ajouté une nouvelle configuration et un nouveau schéma de construction au projet existant.

La solution était de courir pod install sur le schéma nouvellement créé. Après cela, le projet a été construit avec succès.


3
2018-02-26 16:35



Effacer Podfile.lock et relancer pod install corrigé cela pour moi.


1
2017-07-02 20:08



Dans mon cas, j'ai eu la même erreur de compilation avec des erreurs supplémentaires comme "Type inconnu" dans un de mes fichiers de projet, donc je viens de l'ajouter au fichier problématique, et cela l'a résolu instantanément.

#import <UIKit/UIKit.h>


0
2017-09-24 11:49



Mon expérience avec ceci est que Xcode est incapable de trouver des fichiers d'en-tête pour les pods / frameworks importés dans le projet.

Mon expérience de projet avec ceci: Mise à jour de Xcode9.2 - 9.3 où beaucoup de cocoapodes devaient être mis à jour en raison de définitions implicites désormais indisponibles ou obsolètes.
J'avais changé le Podfile pour inclure maintenant "use_frameworks!". Suite à cela et après avoir traité d'autres problèmes de compilation, j'ai trouvé l'erreur que vous rencontrez. Je pense que l'ajout de 'use_frameworks! empêchait certains modules avec un support avant iOS 8 de compiler correctement. Mesures prises pour corriger ce problème:

  1. J'ai essayé de supprimer le répertoire Pods / en utilisant du cacao pod deintegrate
  2. J'ouvre ensuite le projet avec Xcode et nettoyé le dossier de construction et le projet. (supprimer du contenu dans le dossier de données dérivé)
  3. Je puis pod install à nouveau mais le problème a persisté.

  4. Finalement, j'ai supprimé la ligne use_frameworks dans Podfile, puis j'ai répété les étapes 1 à 3 et le projet était maintenant capable de trouver les fichiers d'en-tête manquants et le problème ne s'est jamais présenté de nouveau.


0
2018-04-24 21:57



J'ai eu le même scénario, assurez-vous de la déposer un que vous avez inclus dans YourProjectName-Bridging-Header.h 

  • s'il utilise d'autres classes, ces autres classes sont également incluses avant Déposer un

0
2017-07-21 11:17