30

I've just downloaded Xcode 12 beta 6. I've installed firebase into the project and I get this error. When I correct it with the suggestion it then tells me to correct again with the original. This error is repeated for all 'GoogleDataTransport'. Can you use Firebase with Xcode 12 beta 6? What am I doing wrong? Thanks

enter image description here

Paul Beusterien
  • 27,542
  • 6
  • 83
  • 139
Josh Allen
  • 485
  • 1
  • 4
  • 12

6 Answers6

54

Update to CocoaPods 1.10, run pod deintegrate and pod install.

To work around in earlier CocoaPods versions, disable the CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER option in the generate Pods project Build Settings:

enter image description here

More details in https://github.com/firebase/firebase-ios-sdk/issues/5987 and https://github.com/CocoaPods/CocoaPods/issues/9902.

Paul Beusterien
  • 27,542
  • 6
  • 83
  • 139
23

I fixed it by using the pre-release of cocoapods

sudo gem install cocoapods --pre

and then doing an update

pod install --repo-update

valerybodak
  • 4,195
  • 2
  • 42
  • 53
lorem ipsum
  • 21,175
  • 5
  • 24
  • 48
16

My team didn't want to use cocoapods 1.10 before it's released, and didn't want to re-edit the Pods project's build settings every time a pod install regenerates it. This Podfile post_install step did the trick, credit to Léo-Paul JULIE:

post_install do |installer|
  installer.pods_project.build_configurations.each do |config|
      config.build_settings['CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER'] = 'NO'
    end
end

Edit: As snakeoil points out below, you can also silence annoying warnings about irrelevant iOS versions which you are not supporting. But that setting should probably be edited for each target's configuration's build settings, so in a nested loop. All together, I'm going with something like this for now:

post_install do |installer|
  installer.pods_project.build_configurations.each do |config|
    # Can be removed when moving to cocoapods 1.10
    config.build_settings['CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER'] = 'NO'
  end
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      # Inherit the deployment target defined in this Podfile instead, e.g. platform :ios, '11.0' at the top of this file
      config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'
    end
  end
end
Dan Stoppelman
  • 761
  • 5
  • 6
  • 1
    With you, would rather not upgrade beyond the stable versions. If you're going this way, you can also add ```config.build_settings.delete 'IPHONEOS_DEPLOYMENT_TARGET'``` to get rid of new warnings about that superfluous (AFAIK) option – snakeoil Oct 19 '20 at 17:46
1

First, check for command line tools and install.

sudo xcode-select --switch /Applications/Xcode-beta.app
sudo xcode-select --install

Install cocoapods pre - beta version

sudo gem install cocoapods --pre

Switch to your xCode Project.

pod deintegrate
pod install --repo-update
ZeroOne
  • 584
  • 4
  • 17
0

In my case, Performance Monitoring Pod was causing this issue. When I was trying to install Performance Monitoring.

pod 'Firebase/Performance'

It somehow got conflict with Firebase Core Pod. To resolve it.

  • Comment Out all Firebase Pods in Podfile
  • Run Pod Install
  • Uncomment Firebase Performance Monitor in Podfile
  • Run Pod Install
  • Uncomment all other Firebase Pods in Podfile
  • Run Pod Install
Ankit Saxena
  • 809
  • 7
  • 10
0

This issue CAN be the result of developing iOS on an M1 (Apple Silicon) machine. In this case, the only way to fix the problem is to download a Ruby extension called "ffi" which you can read about here (for extra information): https://rubygems.org/gems/ffi/versions/1.0.9

To do this:

In Terminal, install ffi onto your machine using this command:

sudo arch -x86_64 gem install ffi

Then in your project file, install your podfile with this command:

arch -x86_64 pod install

This should allow you to install your pods (especially if you were getting a "zsh: abort pod install" problem. Notice Terminal will warn you "a bug in the Ruby interpreter or extension libraries".

After this, if your pod was FireStore/FireBase you may have to get another GoogleService-Info.plist file in your project.

John Pitts
  • 653
  • 6
  • 17