Framework header file not found (iOS pop framework)
Asked Answered
P

7

5

I'd like to install facebook's pop framework. I have a multi-project workspace which is not using cocoa pods. I want just the simplest, dumbest, quickest install.

From the pop readme:

"... you can add the project to your workspace and adopt the provided configuration files or manually copy the files under the pop subdirectory into your project. If installing manually, ensure the C++ standard library is also linked by including -lc++ to your project linker flags."

  1. I added pop.xcodeproj to my workspace.
  2. I added "pop.framework" to to the project that needs pop (general > linked frameworks and libraries).
  3. I added "-lc++" to my project linked flags (in the project that needs pop).
  4. Added #import <POP/POP.h> to my .m file.

The result: "POP/POP.h" not found.

I guess I'm doing something wrong, but absolutely no idea where to start looking.

Positron answered 10/6, 2014 at 22:38 Comment(0)
B
15

I set the Built Setting of my project, then it worked.

User Header Search Paths = $(SRCROOT)       // recursive. Pop is placed in the directory
Always Search User Paths = YES
Bole answered 4/1, 2015 at 10:59 Comment(1)
Helped me too, nothing else helped (like cleaning, deleting derived data, restarting app and so on...)Tweeter
H
3

This setting worked for me:

in podfile: pod 'pop'

in project > target > build settings always search user paths YES

add search path: enter image description here

Heterogeneity answered 12/8, 2015 at 18:8 Comment(0)
B
0

Take a look at this:

How to add facebook open source code pop to project directly

I also discovered that the -lc++ flag actually caused a linker error. I followed the instructions in that link and removed the flag and everything worked!

Bleary answered 11/6, 2014 at 2:17 Comment(0)
G
0

You could try this...worked for me as I'm also adding pop as static library, instead of using CocoaPods:

  1. Download source code from this tutorial, because we'll be adding the library files with quotes "POP/POP.h" instead of < POP/POP.h > and all files are already changed here, just copy/paste the "pop" folder from the example project to your project: http://tapity.com/tutorial-getting-started-with-pop/ You can alternatively change all files you already have inserting quotes.

  2. In your project create a subdirectory called "pop" (File/New/Group) with another subdirectory inside called "WebCore". It's important that you create these subdirectories so they will appear as yellow "folders" (instead of blue folders) and Xcode will compile the files properly. You can check if POP files are being included in Build Phases / Compile Sources.

  3. Add the respective POP files inside these empty subdirectories respecting the same structure of the source project (i.e. File/Add Files to "project" inside each subdirectory).

  4. Now just #import "POP/POP.h" and start using pop animations. Doing this way there's no need to add pop.xcodeproj to your workspace.

Gagnon answered 21/6, 2014 at 18:6 Comment(1)
I followed these steps but get an error like this in POPAnimationInternal.h: /Users/kekearif/Documents/myProject/myProject copy/POPPropertyAnimationInternal.h:53:3: Cannot initialize a member subobject of type 'NSUInteger' (aka 'unsigned int') with an rvalue of type 'nullptr_t'. Any idea why this is? thanksBannerman
L
0

After trying all of these solutions, what worked for me was actually was lowering the Deployment Target from 9.3 to 8.0.

Legislatorial answered 30/6, 2016 at 14:28 Comment(0)
A
0

Be careful of the order of your framework search paths. I had another project which I was referencing modules from that had a different version of the framework library and because that project was higher in the framework search path ranking it was picking up the incorrect header files too.

Amanda answered 22/8, 2016 at 12:26 Comment(0)
S
0

Those who suffers from it. My problem was like this,

I was having trouble with swift and xcode 8 build times. So i changed my scheme Edit Scheme -> Build -> Find Implicit Dependencies (Uncheck). I was not get trouble with simulator i was having trouble with device. So when i change it to check again it worked. And then made uncheck or vice versa.

Scare answered 2/12, 2016 at 7:3 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.