'Cordova/CDVViewController.h' file not found in Xcode 7.1 beta

In order to test the iOS9 patch I needed to update my Xcode installation to 7.1 beta. I’m able to build my existing project to my device with no problem. When it came time to archive the project to prepare for submission to the app store, however, I’m getting a build error - Cordova/CDVViewController.h file not found. I’ve gone through just about every fix/workaround that I’ve found on this forum, Stack Overflow, and Google, and none of them have worked for me. If I go back to Xcode 6.4 I can build and archive no problem, but I can’t build to my device now that it’s running iOS 9.1.

I’m guessing it’s a configuration issue somewhere with the new Xcode version setup. Has anyone else run into this? Again, the usual suspects (Preferences > Location > Derived Data > Advanced > Unique), Header Search Paths, etc. all seem to be fine.

Thanks!
Matt

5 Likes

I’m also getting the same error. I’m not using Ionic, just phonegap. When I build for debugging on my device it works fine, when I go to archive I get the error you’re mentioning. I’m still digging through Xcode to find a solution. I’ll update here if I find one.

Me too having this issue in Xcode 7.1. Only issue is in Archive. Build works fine.

I was able to do it with ‘Xcode 7 GM seed’. I was able to make an archive.

@georgeleo - that worked for me as well. Nice find! However, I can’t build to my device in Xcode 7 GM seed because my phone is on iOS 9.1 beta, so I think the workaround might be to build in 7.1 and archive in 7 GM. Thanks again!

Solved.

Add this line to your Build Settings -> Header Search Paths:

"$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include"

Don’t replace the existing line that looks similar, that is still needed to be backwards compatible with Xcode 7 and Xcode 6.4.

This probably had something to do with tvOS, I reckon – Apple had to separate the archive intermediates by platform for universal builds.

82 Likes

@shazron Thank you! I’ve confirmed that this works for me in XCode 7.1 beta. Much appreciated!

Worked for me too. Life saver.

This worked even with the “stable” Xcode version 7.1 (7B91b). Thank you very much.

Great, Thanks A lot !!!

Great works for me… there are many solutions online… but nothing works. You just need to add on search path “$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include”

Thanks

1 Like

Thx !!! very much! Xcode7.1 relase has same problem

Saved my day! This only happen when doing archive after upgrade to Xcode 7.1

Same sentiment as above ("$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include") worked for me…many thanks @shazron!

@shazron Thanks for sharing that tips !!

Thanks, worked for me as well on Xcode 7.1.

Is there any way to put this config into a build script that uses xcodebuild?

1 Like

Unfortunately for me it still doesn’t work :weary:
Can you please have a look at my build settings? Thank you!

Ah, now I see.

I had a Cordova 4.3. Now I’ve updated to 5.3.3 and it works well. Nonetheless I am afraid to use 5.3.3. I heard about many regression errors with plugins on Android. So guys were there any folks that managed to run archive process on the 4.3 version? Thanks!

Perfect, this worked. Thank you! :slight_smile:

I am using a script to build and run iOS apps
Is it possible to set "$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include" in the Build settings using the xcodebuild cli’s?