找不到Xcode -FirebaseCore词汇或预处理程序问题“ GoogleUtilities / GULAppEnvironmentUtil.h”文件

时间:2019-07-02 23:55:59

标签: ios swift xcode cocoapods

我正在使用cocoapod版本/Library/Ruby/Gems/2.3.0/gems/cocoapods-1.7.3/lib/cocoapods.rbSwift 5和Xcode 10.2.1。我清理了派生数据。

我刚刚更新到Swift 5(只是有一个可以支持MoJave的CPU),当我尝试构建项目时,我总是收到错误消息

FirebaseCore Lexical or preprocessor issue 'GoogleUtilities/GULAppEnvironmentUtil.h' file not found

在我更新之前,这在我的旧项目中从未发生过。

似乎特别是来自Firebase/Core

enter image description here

enter image description here

我做了 cmmd + 4 的搜索,其他文件都使用了它,但他们没有抱怨

enter image description here

我尝试过:

$ pod deintegrate
$ pod clean
$ rm Podfile
$ pod init
$ pod install
$ pod repo remove master // also sudo rm -fr ~/.cocoapods/repos/master
$ pod repo update
$ pod setup
$ pod install
$ pod update

但是错误不会消失。 我该如何解决?

这是我的pod文件:

target 'MyApp' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for MyApp

pod 'Stripe'

pod 'DLRadioButton', '~> 1.4'

pod 'GeoFire', :git => 'https://github.com/firebase/geofire-objc.git'

pod 'AFNetworking'

pod 'Alamofire'

pod 'SwiftyJSON'

pod 'SDWebImage'

pod 'Fabric'

pod 'Crashlytics'

pod 'KeychainSwift'

pod 'IQKeyboardManagerSwift'

pod 'HMSegmentedControl'

pod 'NKVPhonePicker'

pod 'FlagPhoneNumber'

pod 'MetalPetal'

pod "SwiftPhoneNumberFormatter"

pod 'CountryPickerView'

pod 'mailcore2-ios'

pod 'Cosmos'

pod 'GoogleInterchangeUtilities'
pod 'GoogleNetworkingUtilities'
pod 'GoogleParsingUtilities'
pod 'GoogleSymbolUtilities'
pod 'GoogleUtilities'

#pod 'Firebase'
pod 'Firebase/Core'
pod 'Firebase/Storage'
pod 'FirebaseInstanceID'
pod 'Firebase/Auth'
pod 'Firebase/Database'
pod 'Firebase/DynamicLinks'
pod 'Firebase/Crash'
pod 'Firebase/Messaging'

pod 'GooglePlacesAPI'
pod ‘GoogleMaps’
pod 'GooglePlaces'
pod 'GooglePlacePicker'

pod 'GoogleSignIn'
pod 'GoogleAnalytics'

pod 'ReachabilitySwift'

post_install do |installer|
    installer.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['SWIFT_VERSION'] = ‘5.0’
        end
    end
end

end

Podfile.Lock

PODS:
  - AFNetworking (3.2.1):
    - AFNetworking/NSURLSession (= 3.2.1)
    - AFNetworking/Reachability (= 3.2.1)
    - AFNetworking/Security (= 3.2.1)
    - AFNetworking/Serialization (= 3.2.1)
    - AFNetworking/UIKit (= 3.2.1)
  - AFNetworking/NSURLSession (3.2.1):
    - AFNetworking/Reachability
    - AFNetworking/Security
    - AFNetworking/Serialization
  - AFNetworking/Reachability (3.2.1)
  - AFNetworking/Security (3.2.1)
  - AFNetworking/Serialization (3.2.1)
  - AFNetworking/UIKit (3.2.1):
    - AFNetworking/NSURLSession
  - Alamofire (4.8.2)
  - Cosmos (19.0.3)
  - CountryPickerView (3.0.1)
  - Crashlytics (3.13.2):
    - Fabric (~> 1.10.2)
  - DLRadioButton (1.4.12)
  - Fabric (1.10.2)
- Firebase/Analytics (3.6.0):
    - FirebaseAnalytics (= 3.4.2)
  - Firebase/Auth (6.3.0):
    - Firebase/CoreOnly
    - FirebaseAuth (~> 6.1.2)
  - Firebase/Core (3.6.0):
    - Firebase/Analytics
  - Firebase/CoreOnly (6.3.0):
    - FirebaseCore (= 6.0.3)
  - Firebase/Crash (3.6.0):
    - Firebase/Analytics
    - FirebaseCrash (= 1.0.7)
  - Firebase/Database (6.3.0):
    - Firebase/CoreOnly
    - FirebaseDatabase (~> 6.0.0)
  - Firebase/DynamicLinks (6.3.0):
    - Firebase/CoreOnly
    - FirebaseDynamicLinks (~> 4.0.0)
  - Firebase/Messaging (3.6.0):
    - Firebase/Analytics
    - FirebaseMessaging (= 1.2.0)
  - Firebase/Storage (6.3.0):
    - Firebase/CoreOnly
    - FirebaseStorage (~> 3.2.1)
  - FirebaseAnalytics (3.4.2):
    - FirebaseInstanceID (~> 1.0)
    - GoogleInterchangeUtilities (~> 1.2)
    - GoogleSymbolUtilities (~> 1.1)
    - GoogleUtilities (~> 1.2)
  - FirebaseAnalyticsInterop (1.2.0)
  - FirebaseAuth (6.1.2):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
    - GoogleUtilities/Environment (~> 6.2)
    - GTMSessionFetcher/Core (~> 1.1)
  - FirebaseAuthInterop (1.0.0)
  - FirebaseCore (6.0.3):
    - GoogleUtilities/Environment (~> 6.0)
    - GoogleUtilities/Logger (~> 6.0)
  - FirebaseCrash (1.0.7):
    - FirebaseAnalytics (~> 3.2)
    - FirebaseInstanceID (~> 1.0)
    - GoogleInterchangeUtilities (~> 1.2)
    - GoogleSymbolUtilities (~> 1.1)
    - GoogleUtilities (~> 1.2)
- FirebaseAnalyticsInterop (1.2.0)
  - FirebaseAuth (6.1.2):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
    - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
    - GoogleUtilities/Environment (~> 6.2)
    - GTMSessionFetcher/Core (~> 1.1)
  - FirebaseAuthInterop (1.0.0)
  - FirebaseCore (6.0.3):
    - GoogleUtilities/Environment (~> 6.0)
    - GoogleUtilities/Logger (~> 6.0)
  - FirebaseCrash (1.0.7):
    - FirebaseAnalytics (~> 3.2)
    - FirebaseInstanceID (~> 1.0)
    - GoogleInterchangeUtilities (~> 1.2)
    - GoogleSymbolUtilities (~> 1.1)
    - GoogleUtilities (~> 1.2)
  - FirebaseDatabase (6.0.0):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
    - leveldb-library (~> 1.18)
  - FirebaseDynamicLinks (4.0.0):
    - FirebaseAnalyticsInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
  - FirebaseInstanceID (1.0.9)
  - FirebaseMessaging (1.2.0):
    - FirebaseAnalytics (~> 3.3)
    - FirebaseInstanceID (~> 1.0)
    - GoogleInterchangeUtilities (~> 1.2)
    - GoogleIPhoneUtilities (~> 1.2)
    - GoogleSymbolUtilities (~> 1.1)
  - FirebaseStorage (3.2.1):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
    - GTMSessionFetcher/Core (~> 1.1)
  - FlagPhoneNumber (0.7.6):
    - FlagPhoneNumber/libPhoneNumberiOS (= 0.7.6)
  - FlagPhoneNumber/libPhoneNumberiOS (0.7.6)
  - GeoFire (3.0.0):
    - Firebase/Database (~> 6.0)
  - GoogleAnalytics (3.17.0)
  - GoogleInterchangeUtilities (1.2.2):
    - GoogleSymbolUtilities (~> 1.1)
  - GoogleIPhoneUtilities (1.2.1):
    - GoogleSymbolUtilities (~> 1.0)
    - GoogleUtilities (~> 1.0)
- GoogleMaps (3.1.0):
    - GoogleMaps/Maps (= 3.1.0)
  - GoogleMaps/Base (3.1.0)
  - GoogleMaps/Maps (3.1.0):
    - GoogleMaps/Base
  - GoogleNetworkingUtilities (1.2.2):
    - GoogleSymbolUtilities (~> 1.1)
  - GoogleParsingUtilities (1.1.2):
    - GoogleNetworkingUtilities (~> 1.2)
    - GoogleSymbolUtilities (~> 1.1)
  - GooglePlacePicker (3.1.0):
    - GoogleMaps (= 3.1.0)
    - GooglePlaces (= 3.1.0)
  - GooglePlaces (3.1.0):
    - GoogleMaps/Base (= 3.1.0)
  - GooglePlacesAPI (1.1.4):
    - Alamofire (~> 4)
    - ObjectMapper (~> 3)
  - GoogleSignIn (4.4.0):
    - "GoogleToolboxForMac/NSDictionary+URLArguments (~> 2.1)"
    - "GoogleToolboxForMac/NSString+URLArguments (~> 2.1)"
    - GTMSessionFetcher/Core (~> 1.1)
  - GoogleSymbolUtilities (1.1.2)
  - GoogleToolboxForMac/DebugUtils (2.2.1):
    - GoogleToolboxForMac/Defines (= 2.2.1)
  - GoogleToolboxForMac/Defines (2.2.1)
  - "GoogleToolboxForMac/NSDictionary+URLArguments (2.2.1)":
    - GoogleToolboxForMac/DebugUtils (= 2.2.1)
    - GoogleToolboxForMac/Defines (= 2.2.1)
    - "GoogleToolboxForMac/NSString+URLArguments (= 2.2.1)"
  - "GoogleToolboxForMac/NSString+URLArguments (2.2.1)"
  - GoogleUtilities (1.3.2):
    - GoogleSymbolUtilities (~> 1.1)
  - GoogleUtilities/AppDelegateSwizzler (6.2.1):
    - GoogleUtilities/Environment
    - GoogleUtilities/Logger
    - GoogleUtilities/Network
  - GoogleUtilities/Environment (6.2.1)
  - GoogleUtilities/Logger (6.2.1):
    - GoogleUtilities/Environment
  - GoogleUtilities/Network (6.2.1):
    - GoogleUtilities/Logger
    - "GoogleUtilities/NSData+zlib"
    - GoogleUtilities/Reachability
  - "GoogleUtilities/NSData+zlib (6.2.1)"
- GoogleUtilities/Reachability (6.2.1):
    - GoogleUtilities/Logger
  - GTMSessionFetcher/Core (1.2.2)
  - HMSegmentedControl (1.5.5)
  - IQKeyboardManagerSwift (6.4.0)
  - KeychainSwift (16.0.1)
  - leveldb-library (1.20)
  - mailcore2-ios (0.6.4)
  - MetalPetal (1.4.4):
    - MetalPetal/Core (= 1.4.4)
  - MetalPetal/Core (1.4.4)
  - NKVPhonePicker (2.1.0)
  - ObjectMapper (3.5.1)
  - ReachabilitySwift (4.3.1)
  - SDWebImage (5.0.6):
    - SDWebImage/Core (= 5.0.6)
  - SDWebImage/Core (5.0.6)
  - Stripe (15.0.1)
  - SwiftPhoneNumberFormatter (1.5)
  - SwiftyJSON (5.0.0)

DEPENDENCIES:
  - AFNetworking
  - Alamofire
  - Cosmos
  - CountryPickerView
  - Crashlytics
  - DLRadioButton (~> 1.4)
  - Fabric
  - Firebase/Auth
  - Firebase/Core
  - Firebase/Crash
  - Firebase/Database
  - Firebase/DynamicLinks
  - Firebase/Messaging
  - Firebase/Storage
  - FirebaseInstanceID
  - FlagPhoneNumber
  - GeoFire (from `https://github.com/firebase/geofire-objc.git`)
  - GoogleAnalytics
  - GoogleInterchangeUtilities
  - GoogleMaps
  - GoogleNetworkingUtilities
  - GoogleParsingUtilities
  - GooglePlacePicker
  - GooglePlaces
  - GooglePlacesAPI
  - GoogleSignIn
  - GoogleSymbolUtilities
  - GoogleUtilities
  - HMSegmentedControl
  - IQKeyboardManagerSwift
  - KeychainSwift
  - mailcore2-ios
  - MetalPetal
  - NKVPhonePicker
  - ReachabilitySwift
  - SDWebImage
  - Stripe
  - SwiftPhoneNumberFormatter
  - SwiftyJSON

SPEC REPOS:
  https://github.com/cocoapods/specs.git:
    - AFNetworking
    - Alamofire
    - Cosmos
    - CountryPickerView
    - Crashlytics
    - DLRadioButton
    - Fabric
    - Firebase
    - FirebaseAnalytics
    - FirebaseAnalyticsInterop
    - FirebaseAuth
    - FirebaseAuthInterop
    - FirebaseCore
    - FirebaseCrash
    - FirebaseDatabase
    - FirebaseDynamicLinks
    - FirebaseInstanceID
    - FirebaseMessaging
    - FirebaseStorage
    - FlagPhoneNumber
    - GoogleAnalytics
    - GoogleInterchangeUtilities
    - GoogleIPhoneUtilities
    - GoogleMaps
    - GoogleNetworkingUtilities
    - GoogleParsingUtilities
    - GooglePlacePicker
    - GooglePlaces
    - GooglePlacesAPI
    - GoogleSignIn
    - GoogleSymbolUtilities
    - GoogleToolboxForMac
    - GoogleUtilities
    - GTMSessionFetcher
    - HMSegmentedControl
    - IQKeyboardManagerSwift
    - KeychainSwift
    - leveldb-library
    - mailcore2-ios
    - MetalPetal
    - NKVPhonePicker
    - ObjectMapper
    - ReachabilitySwift
- SDWebImage
    - Stripe
    - SwiftPhoneNumberFormatter
    - SwiftyJSON

EXTERNAL SOURCES:
  GeoFire:
    :git: https://github.com/firebase/geofire-objc.git

4 个答案:

答案 0 :(得分:1)

从Podfile中删除以下内容:

pod 'GoogleInterchangeUtilities'
pod 'GoogleNetworkingUtilities'
pod 'GoogleParsingUtilities'
pod 'GoogleSymbolUtilities'
pod 'GoogleUtilities'

这些是内部Google支持容器,不应直接添加到Podfiles中。其中一些不再处于活动状态,并且由于要求它们进行加载,因此它们在其他版本的旧容器(例如Firebase 3.x)中被强制使用。 Firebase当前在版本6上。它还在加载旧版本的GoogleUtilities,而不是当前的6.x版本,这就是为什么缺少GoogleUtilities符号链接错误的原因。

答案 1 :(得分:1)

这是因为GoogleUtilities的版本不匹配,请使用GoogleUtilities更新pod update GoogleUtilities

答案 2 :(得分:0)

我运行了$ sudo gem which cocoapods,它说我使用的版本是cocoapods-1.7.3。幸运的是,我的旧计算机仍然可以运行cocoapods-1.5.3的旧版本的cocoapods。

我做了五件事

1-我卸载了cocoapods的当前版本并安装了以前的版本:

$ sudo gem uninstall cocoapod // uninstall current version
$ sudo gem install cocoapods -v 0.25.0 // install the older version that was working
$ sudo gem which cocoapods // check the updated version

2-我运行以下命令来清理所有内容,尽管清理导出的数据可能是我唯一需要的

$ rm -rf ~/Library/Caches/CocoaPods
$ rm -rf Pods
$ rm -rf ~/Library/Developer/Xcode/DerivedData
$ pod deintegrate
$ pod clean
$ rm Podfile
$ pod cache clean --all

3-运行$ pod init创建Podfile之后,我打开它并确保我在Xcode项目中使用的最低版本与Podfile中的最低版本匹配,并且我还向其中添加了install! 'cocoapods', :deterministic_uuids => false root of the pod file

# Uncomment the next line to define a global platform for your project
platform :ios, '12.0' // my Xcode project has a minimum target of iOS 12

install! 'cocoapods', :deterministic_uuids => false // this line should be written before the target line with the project name below

target 'MyProjectName' do
...
  1. 完成上述操作并运行pod install后,我不断收到错误消息:
  

[!] CocoaPods找不到Pod的兼容版本   “ Firebase /崩溃”:在Podfile中:       找到了满足Firebase/Crash依赖性的Firebase / Crash规范,但它们需要更高的最低部署目标。

在我的pod文件中,我注释掉了Firebase / Crash

$ #Firebase/Crash

5-之后我跑了pod install,我也跑了pod update,问题的错误消失了:

$ pod install
$ pod update

FirebaseCore Lexical or preprocessor 'GoogleUtilities/GULAppEnvironmentUtil.h' file not found终于得到解决,尽管我已经遇到了其他一些错误,例如'NBPhoneNumberDesc.h' file not found,但这是我用来摆脱此GoogleUtilities的步骤。

答案 3 :(得分:0)

仅安装此Pod“ Firebase / Core”