33

The problem:

I have a dynamic framework, which uses Firebase added by cocoapods. And I also have the App, which uses this dynamic framework. But when I try to build the project I got error Missing required module Firebase.

I tried the following:

  • remove derived data + clean
  • re-install pods
  • add 'Import paths' to the build settings (in this case I got error 'Library not loaded' in runtime)

My podfile:

target 'Project' do    
  ...
end
target 'Framework' do    
  pod 'Firebase/Core'
  pod 'Firebase/Auth'
end

The Framework is added to Embedded binaries and Linked Frameworks and Libraries.

Ilya Kharabet
  • 3,558
  • 2
  • 14
  • 26

4 Answers4

53

For anyone still having this issue, doing this solved it for me. Add this to your test target build settings.

HEADER_SEARCH_PATHS = "${SRCROOT}/Pods/Firebase/CoreOnly/Sources"

Full discussion can be found on firebase GitHub issues.

you can find HEADER_SEARCH_PATHS in Test Target > Build Settings > Search Paths > Header Search paths.

Just incase you cant find HEADER_SEARCH_PATHS in Build Settings, click the ALL button to show all settings.

knig_T
  • 1,656
  • 13
  • 16
32

Add the following to your test target:

HEADER_SEARCH_PATHS = "${PODS_ROOT}/Firebase/CoreOnly/Sources"

That’s in test target > Build Settings > Header Search Paths.

Jano
  • 61,767
  • 21
  • 157
  • 186
4

After adding test target, running:

pod install

and add to:

HEADER_SEARCH_PATHS = $(inherited)

fixed for me.

On Framework Search Path pod put all pod projects path automatically.

Of course, to podfile added this after last pod name:

target 'TestTargetName' do
  inherit! :search_paths
end
Shohin
  • 383
  • 4
  • 7
0

Nothing did help to me until

target 'TestTargetName' do
  
    pod 'Firebase/Storage'
  
end

I'm not sure what firebase does so I can't run tests (tests do not depend on firebase at all)

iago849
  • 1,722
  • 1
  • 12
  • 9