cocoapods-binary icon indicating copy to clipboard operation
cocoapods-binary copied to clipboard

pod install has different behavior and results for pod `Firebase/MLVisionFaceModel`

Open pofat opened this issue 5 years ago • 3 comments

If you have pod Firebase/MLVisionFaceModel, pod install will have different behavior between first time install (install with no Pods/ at local) and installation afterward. And after second pod install, the project will fail to be built. Because the Firebase.h in Firebase module.modulemap can not be found.

A workaround to solve this is to add "$(PODS_ROOT)/_Prebuild/GeneratedFrameworks/Firebase/CoreOnly/Sources" in User Header Search Path

Is it a bug or I did something wrong?

I think that pod install should have consistent behavior and result based on the same Podfile.

  • What's your environment:
CocoaPods : 1.7.5
  Xcode : 10.2.1 (10E1001)
cocoapods-binary      : 0.4.4
plugin 'cocoapods-binary'

pofat avatar Aug 17 '19 15:08 pofat

Hello,

I have encountered a very similar issue with Firebase/Analytics where I could no longer build after either running a pod install more than once (it only worked after the first time) or cleaning up the DerivedData folder (no idea how this could be related oO) after the first pod install. The error looks the same : Firebase.h in module.modulemap can not be found.

However, I used a different "workaround" (if you can call that a workaround…) where I simply "exclude" Firebase from the pre-build hook (no all_binary! and :binary => true on everything else).

  • What's your environment:
CocoaPods : 1.8.4
  Xcode : 11.3.1 (11C504)
cocoapods-binary : 0.4.4
plugin 'cocoapods-binary'
  • A demo project is helpful:
    I tried to reproduce the bug with a demo project but it didn't work (or rather it did...). I don't have time to try more but I had the issue with @pofat's demo project and the environment above.

npjk avatar Feb 20 '20 14:02 npjk

I'm also having this problem with Firebase/Analytics.

@pofat Could you consider changing the title of this issue, as it's more generic than just MLVisionFaceModel? I almost didn't see this.

Seems to be a problem with headers not being where they should be. After a clean pod install, i.e. with no Pods directory, compilation works, and I have:

% find Pods -name Firebase.h
Pods/_Prebuild/GeneratedFrameworks/Firebase/CoreOnly/Sources/Firebase.h
Pods/Firebase/CoreOnly/Sources/Firebase.h
Pods/Headers/Public/Firebase/Firebase.h
Pods/Headers/Private/Firebase/Firebase.h

On subsequent pod installs, compilation fails and I have:

% find Pods -name Firebase.h
Pods/_Prebuild/GeneratedFrameworks/Firebase/CoreOnly/Sources/Firebase.h

I've used the user headers workaround, which I see as better than reverting to source for Firebase (there's a ton of code in there), but this is definitely a bug, isn't it?

luxmentis avatar Mar 03 '20 01:03 luxmentis

Any solutions for this? I also tried to change my Firebase pods to binary and also Firebase/Analytics was the issue

Kamilton avatar Jul 19 '23 16:07 Kamilton