Facebook Connect in Iphone header include path - iphone

I am trying to compile facebook library for my iphone application. But I am getting this error.
error: FBConnect/FBConnect.h: No such file or directory
I have added the location of the folder in header search paths and yet it is not compiling.
This is the path that I have added-
/Users/nishant/Downloads/facebook-facebook-iphone-sdk-1059eb6/src.
I even tried the copy files to destination folder option, but that also did not work.
I know this is a very simple step, but I am getting frustrated, because I have tried this like 20-30 times.
Any help.

There’s a User Header Search Path between the Build settings for your target. Set it to the root directory of the Facebook library code and it should build fine. (I have spent a while with the setting myself.)

You can check if the file is added to you current target - just expand 'Compile Sources' section in your target and see if the file is there.

I too tried this for some time and finally imported the below line
import "FBConnect.h"
instead of #import "FBConnect/FBConnect.h"
voila! it worked like a charm.

Related

Cannot access folder path header file in solution

I imported one project to another project by following this link tutorial
successfully build that two project. But when I added
#import <SampleSubproject/SampleSubproject.h> this to my main ViewController.m file error be occur.
Error : "SampleSubproject/SampleSubproject.h" file is not found.
Why is that error occurred ??
Is there any error ?
Please help me guys!
You have Headers search path settings at project configuration. Let's say there're directories A and B. With "SampleSubproject/SampleSubproject.h" Xcode looks for SampleSubproject.h at A/SampleSubproject/SampleSubproject.h and B/SampleSubproject/SampleSubproject.h. If there's a checked recursive flag for any directories, the search is performed at this directories and their subdirectories.
Now you'll need to check what is the headers search path for the target you are building keeping in mind that you might have several targets and the file with the import might not be included into all the targets.
As you also have a red library, you'll want to check the Libraries search path as well, it works in the same way.

lexical or preprocessor issue file not found occurs while archiving?

I am new to this iPhone development and i have almost completed my first application but when i try for creating an archive it gives an error lexical or preprocessed issue file not found But it runs fine in simulator and also has also tested on device. I have included SDwebimage architecture for lazy loading of image in table view.Can any tell me what is the issue?
Few things to try, Ensure the Framework and all it's headers are imported into your project properly.
Also in your Build Settings set YES to Always search user paths, and make sure your User header paths are pointing to the Framework.
Finally, Build->Clean and Restart Xcode.
Hope this helps !
UPDATE: According to SDWebImage's installation, it's required you make a modification to Header Search Path and not User header paths, As seen below.
Have you done this as well? I suggest slowly, re-doing all the installation steps from the beginning.
Spaces in a folder name in your header search path can cause this problem. Make sure the folders in your project do not have spaces in their names.
My project was building fine until I updated to Xcode 10.1. After the Xcode update, started getting Lexical or preprocessor Issue errors on build. Some XCDataModel header files could not be found.
This fixed the issue.
Go to Build Settings, Header Search Paths
Change the appropriate value from $(SRCROOT) non-recursive to recursive.
This ensures that subfolders are also searched for headers during build.
I had this same issue now and found that my sub-projects 'Public Header Folder Path' was set to an incorrect path (when compared with what my main project was using as its 'Header Search Path' and 'User Header Search Path').
e.g.
My main project had the following:
Header Search Paths
Debug "build/Debug-iphoneos/../../Headers"
Release "build/Debug-iphoneos/../../Headers"
And the same for the User Header Search Paths
Whereas my sub-project (dependency) had the following:
Public Header Folder Path
Debug "include/BoxSDK"
Release "include/BoxSDK"
Changing the 'Public Header Folder Path' to "../../Headers/BoxSDK" fixed the problem since the main project was already searching that folder ('../../Headers').
PS: I took some good screenshots, but I am not allowed to post an answer with images until I hit reputation 10 :(
I had this problem after changed project name. I used all the methods mentioned on the internet but still doesn't work. Then I realized that all the header files not found was from cocoapods, so I re-installed the cocoapods using pod install, and thus solved the problem.
Hope this could help.
In my case I was developing a framework and had a test application inside it, what was missing is inside the test application target -> build settings -> Framework Search Paths:
The value needed to be the framework path (the build output - .framework) which is in my case:
"../FrameworkNameFolder/" - the 2 points indicates to go one folder up.
Also, inside the test application target -> Build Phases -> Link Binary With Libraries:
I had to remove the framework file, clean the project, add the framework file again, compile and this also solved the issue.
The new version contain fix for this, feel free to update.
Or you can just replace
#include "iPhone_View.h"
with
#if UNITY_VERSION < 450
#include "iPhone_View.h"
#endif
Delete the unit testing from your project follow the below steps this will solve the issue.
select your project from the project navigator to open the project editor. From the target delete the test from the left side of the project editor and press the Delete key.
I know this is old, but I'm gonna chime in anyway because it may be useful to someone. If you can still see the file in Finder, then click on the file in your project and delete it, selecting "remove references" and not "move to trash".
Once the reference is removed, drag and drop the file from finder into your project again and it should sort itself out.
Just adding another thing that worked for me :
react-native link
Evidently my ReactNative files were no longer there. I could figure that out by clicking on
Build Phases -> Link Binary with Libraries ->
Then right clicking a file I knew was responsible for React, and clicking Show In Finder .
But nothing opened. So assuming the library went missing, I just ran the above command which relinked everything again.
Also if you havn't, try :
rm -rf node_modules/ && npm install
This happened to me after I renamed a file. For some reason it was still looking for the file with the old name. What I did was create the file that it was complaining about and added to the project. Then I did a Project->clean, then Project->Build and verified the error was gone. Then I selected the newly added files and deleted them. This removed all references and I no longer see the error.
I fixed mine. The fb sdk downloaded (from my browser) as 'FacebookSDKs-iOS-4.22.0' -- I just had to rename the folder to FacebookSDK. So now in Build
Settings --> Framework Search Paths
the path looks something like /Users/.../Documents/FacebookSDK (where as before it was /Users/.../Documents/FacebookSDKs-iOS-4.22.0)
Hope this helps!
For what it's worth, my problem was completely unrelated to the error Xcode was giving. I stumbled onto a solution by deleting the .h reference, compiling, adding the reference back and compiling again. The actual error then became evident.

SDWebImage building for archive (distribution)?

I am using the SDWebImage open source project for loading images asynchronously.
I can build & run for the simulator as well as for my local device.
However, when i try to build for distribution (i.e. Archive), the compiler doesn't seem to understand what the header file is:
import "UIImageView+WebCache.h" (no such file or directory).
I pretty much followed the instructions, with relative ease, described here on
github.com/rs/SDWebImage.
I knew things were going way too smoothily/easily to be true.
Oddly, i've never really faced an issue that is exclusive to Archiving.
Anybody tried Archiving with SDWebImage before?
* Updated *
I updated based on comment below. Now i am getting the following error while Archive building:
arm-apple-darwin10-llvm-gcc-4.2:
Poll/BuildProductsPath/Release-iphoneos/libSDWebImage.a: No such file
or directory Command
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc-4.2
failed with exit code 1
The strange thing is that i have the sdwebimage.a file in my project (there's actually 2, one that i copied and included, and the 2nd one from the SDWEbImage project itself).
* Update 2 *
Upon further investigation, my SDWebImage project is NOT getting built when i Archive (the .a file is red). But any other build type works fine. I looked everywhere and it seems like the SDWebImage project has the distribution configurations. Not sure what else could be the issue here.
You can keep your setup as you have it. All that is needed is to add the header files to the search path. To add the needed header files to the search path do the following.
Select your project file
Select your target
Select Build settings
In the search box enter 'header search paths'
For the Release add "$(SOURCE_ROOT)/SDWebImage" (thats
with quotes).
This works when importing like this #import <SDWebImage/UIImageView+WebCache.h>
So, I have and may others had had this same problem. I worked on it for awhile this morning and found all the suggestions are not working.
How I got it to work is to add the Workspace lib to your project, as it stated in the instructions. Make sure the file isn't red, I had to play around removing it and adding the header search path again.
Finally, I was able to see the libSDWebImage.a file.
Right click on that file and "Show in Finder"
Move libSDWebImage.a and SDWebImage/.h files to a directory you will not delete
Add the libSDWebImage.a and SDWebImage/.h files to you project
You can archive now.
Hope it works for you.
I tried all of the above methods of adding header paths.. nothing worked. I'm able to build the project fine in debug but not archive. I just tried something simple and it did work.
The file "UIImageView+WebCache.h" is part of the subproject SDWebImage.xcodeproj.. In my main workspace project I simply did "Add File" and found the "UIImageView+WebCache.h" on disk and added it to my main project. Now that file is part of my main project. Ran Archive and it worked.. I little dumb, but it worked at least
I solved it very easily by adding (with quotes):
"$(SRCROOT)/SDWebImage"
to the various Header Search Paths under my project's Build Settings. Thanks to Lizard in SDWebImage/UIImageView+WebCache.h file not found for his solution.
For me this one worked, when addded to Header Search Paths (it is exact path to the SDWebImage project)
"$(PROJECT_DIR)/ProjectName/Libraries/SDWebImage"

Info.plist file "no such file" error

I have tried to move the files in my project folder to a different folder and everything went ok, except that Xcode cannot find my Info.plist file now. This is the error I get.
could not read data from '/Users/jamiefraser/Developer/CocoaTouch Apps/MyApp/MyApp/MyApp/MyApp-Info.plist': The file “MyApp-Info.plist” couldn’t be opened because there is no such file.
The actual files location is
'/Users/jamiefraser/Developer/CocoaTouch Apps/MyApp/MyApp/MyApp-Info.plist'
I have checked the build settings for the project and they read
MyApp/MyApp-Info.plist
I have tried deleting the build folder and cleaning the project, but I always get this same error. I appreciate any help you can offer
Remove MyApp/ portion from build settings. plist file usually is located in the same folder ad project. You can always open project file in vi and edit it manually.
It is just a guess but it seems like one trailing /MyApp is too much in the location you are wanting to read from:
'/Users/jamiefraser/Developer/CocoaTouch Apps/MyApp/MyApp/MyApp/MyApp-Info.plist'
As opposed to the actual location:
'/Users/jamiefraser/Developer/CocoaTouch Apps/MyApp/MyApp/MyApp-Info.plist'
It would make sense to check out the URL / PATH variable you want to read from.
I had the same problem after trying to duplicate and rename a project.
In Build Settings, I had to fix two paths before I finally got it compiling successfully:
Under Packaging, Info.plist
Under Apple LLVM 5.0 - Language, Prefix.pch

"FBConnect/FBConnect.h" no such file or directory error

I am developing an iphone application which has some facebook integration in it.I added the fbconnect folder which i downlaoded from internet and added #import "FBConnect/FBConnect.h".
But when i run the app it shows a lot of errors like
"FBConnect/FBConnect.h" no such file or directory
"FBConnect/FBsession.h" no such file or directory etc.
I downloaded some facebook projects that works fine But what can be the problem with mine?
Your header search path is not correct.
In your header search paths write ../src/ & place your facebook connect downloaded source in the same folder in which your project is kept.It should work then.
I’m not sure if there are other, easier ways, but I do this using the Header Search Paths setting (right-click on the target, Get Info, select the Build tab and filter for Header). There you have to enter the path to the Facebook SDK so that the compiler sees the FBConnect directory.
I got a solution from the above answer for this but i want to give all details about this so others can benifit .
First download a fbconnect project from this site
Then make your own facebook project and save the downloaded project folder in the same directory as your project
Then go to target>get info>Build>header search and make a new field as ../src(or whatever you name the downloaded project folder)
Drag the Fbconnect folder to your xcode and mark the copy check box (It must include the FBConnect bundle)
Run.