This question has evolved over the past several weeks to cover more general issues with xcode4 (and upgrading projects form older xcodes).
However many of the issues can be solved by following the same set of instructions.
If you have any of the following issues, try the methods in the accepted answer:
- Xcode 4 fails to archive an App
- Xcode 4 creates an unusable archive
- Xcode 4 does not create an .ipa
- Xcode 4 fails to compile due to preprocessor errors
- Xcode 4 cannot find headers
- Xcode 4's code complete is not working
- Project dependancies won't compile
- Adding a dependancy causes any of the above issues
Original Question
Title: "lexical or preprocessor issue file not found" in Xcode 4
I have a project in Xcode 4 that will build fine and run on the device and simulator but when trying to Archive it errors when looking for headers files associated with a static library:
In file included from /Volumes/Development/Path/LBProject/LBProject/LBProject-Prefix.pch:15:
In file included from /Volumes/Development/Path/LBProject/LBFDefines.h:23:
In file included from /Volumes/Development/Path/LBProject/Classes/LBProjectAppDelegate.h:11:
In file included from /Volumes/Development/Path/LBProject/LBProject/../FKNDirectory/FKNDirectoryManager.h:10:
/Volumes/Development/Path/LBProject/LBProject/../FKNDirectory/FKNDataModel.h:11:9: fatal error: 'Merchant.h' file not found [1]
#import "Merchant.h"
^
1 error generated.
Xcode gives the error
lexical or preprocessor issue file not found
Much Googling has show many people are having this issue but no solution. Anyone got a fix or even a clue.
Update: The user header
search paths are set to ${BUILT_PRODUCTS_DIR}
in all configurations. It builds fine using any configuration except when archiving.
Update 2: Merchant.h
is a Core Data class that is auto-generated and therefore inside .xcdatamodeld
package, however the headers are all copied to the public headers directory when the library is built.