XCode fails to build project. NSPOSIXErrorDomain??

So far the Cloud Build seems awesome, however, I’ve run into a blocking issue that I’ve never encountered when building manually with XCode 5.1.1 on my Mac Pro.

The Android compilation for the same code works fine.

87: + Building with Xcode 5.1.1
88: [xcode] 1 error generated.
89: [xcode] 2014-08-22 19:34:49.398 xcodebuild[72163:1403] DVTAssertions: Warning in /SourceCache/IDEXcode3ProjectSupport/IDEXcode3ProjectSupport-5069/Xcode3Core/LegacyProjects/Frameworks/DevToolsCore/DevToolsCore/SpecificationTypes/BuiltInSpecifications/Compilers/XCGccMakefileDependencies.m:76
90: [xcode] NSUnderlyingError = “Error Domain=NSPOSIXErrorDomain Code=2 "The operation couldn\U2019t be completed. No such file or directory"”;
91: [xcode] Please file a bug at http://bugreport.apple.com with this warning message and any useful information you can provide.
92: [xcode] ** BUILD FAILED **
93: ! build of ‘default-ios’ failed. compile failed
94: Finished: FAILURE

The Unity phase completes fine, with just a few code warnings. I am using a few plugins (which work fine when compiled locally), and some non-standard frameworks (StoreKit, Accounts, Social), but otherwise it’s a pretty standard XCode project. We aren’t doing any post-processing on the Unity output aside from the frameworks.

Hi @Wisteso - Unity Cloud Build doesn’t support adding Xcode frameworks yet. But it is on our roadmap and something we are going to be adding in the future.

1 Like

Hi! Just chiming in that this would be my #1 wishlist item as well, since until this is available we cannot make any iOS builds for the foreseeable future as our projects have always relied on plugins in the past and likely will continue to do so in the future.

Should I still raise a support request for this?

@Keepabee - ok, good to know! We have that feature on our roadmap, so watch this space and we’ll announce when it is available.

hypeNate, it’s of course understandable that the very first release would not support frameworks. I’m hoping (somewhat assuming) that framework support will be coming very soon? I think the cloud build system is otherwise awesome and a perfect solution for our team for many reasons.

If adding framework support is not a critical priority already, I just want to politely point out that currently this feature is for Unity Pro users only, but I think Unity Pro users will often want to be creating games that rely on these post-build frameworks (especially StoreKit for IAPs).

@Wisteso - you’re absolutely right. This is a feature that is definitely in the works. I can’t announce exactly when it will be ready - but it is coming.

And thanks for the kind words about the service!

I was surprised today to find that our framework dependent builds were suddenly succeeding. Did you guys already patch support in?

Edit: Actually it just occurred to me that it might instead be succeeding due to the new “IOSNative” plugin now containing a python script which manually adds these frameworks in to the XCode project via some Unity build hook.

Either way, I’m very happy to not have to rely on a secondary Mac for builds anymore, and we no longer really need to use TestFlight for deploying builds! (though it is nice for beta testing)

I’m really loving this cloud building system! :slight_smile:

1 Like

@Wisteso - great! Yes, if the plugin author has included a script to manage the framework then that should execute as planned. Many of the Prime31 plugins have this functionality.

@Wisteso - good news: support for Advanced build settings has been added to Unity Cloud Build. Check this forum thread for more information:

Thanks for your feedback and input - hope you enjoy the new features!

I’m getting the same error when building a project containing UnityAds.
The same project, builds fine on a local computer.

Do I need to setup anything extra in the project or the Advanced Build settings to make it work?

18795: [xcode] CompileC build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/Objects-normal/armv7/UnityAdsUnityWrapper.o Libraries/UnityAdsUnityWrapper.mm normal armv7 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler
18796: [xcode] export LANG=en_US.US-ASCII
18797: [xcode] #import
18798: [xcode] ^
18799: [xcode] 1 error generated.
18800: [xcode] CompileC build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/Objects-normal/armv7/iPhone_Profiler.o Classes/iPhone_Profiler.cpp normal armv7 c++ com.apple.compilers.llvm.clang.1_0.compiler
18801: [xcode] export LANG=en_US.US-ASCII
18802: [xcode] 2014-10-08 20:44:52.146 xcodebuild[45267:5907] DVTAssertions: Warning in /SourceCache/IDEXcode3ProjectSupport/IDEXcode3ProjectSupport-5069/Xcode3Core/LegacyProjects/Frameworks/DevToolsCore/DevToolsCore/SpecificationTypes/BuiltInSpecifications/Compilers/XCGccMakefileDependencies.m:76
18803: [xcode] NSUnderlyingError = "Error Domain=NSPOSIXErrorDomain Code=2 \"The operation couldn\U2019t be completed. No such file or directory\"";
18804: [xcode] }.
18805: [xcode] Function: void XCGccMakefileDependenciesParsePathsFromRuleFile(NSString *__strong, void (^__strong)(NSString *__strong))
18806: [xcode] Thread: {name = (null), num = 7}
18807: [xcode] Please file a bug at http://bugreport.apple.com with this warning message and any useful information you can provide.
18808: [xcode] CompileC build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/Objects-normal/armv7/RegisterMonoModules.o Libraries/RegisterMonoModules.cpp normal armv7 c++ com.apple.compilers.llvm.clang.1_0.compiler
18809: [xcode] export LANG=en_US.US-ASCII
18810: [xcode] CompileC build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/Objects-normal/armv7/WWWConnection.o Classes/Unity/WWWConnection.mm normal armv7 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler
18811: [xcode] export LANG=en_US.US-ASCII
18812: [xcode] ** BUILD FAILED **
18813: [xcode] The following build commands failed:
18814: [xcode] CompileC build/Unity-iPhone.build/Release-iphoneos/Unity-iPhone.build/Objects-normal/armv7/UnityAdsUnityWrapper.o Libraries/UnityAdsUnityWrapper.mm normal armv7 objective-c++ com.apple.compilers.llvm.clang.1_0.compiler
18815: [xcode] (1 failure)
18816: ! build of 'default-ios' failed. compile failed

Hi @Inter-Illusion - I can’t tell from this code whether you’re using the Xcode Manipulation API?

Just in case you are not: If your project requires adding Xcode frameworks after Unity exports the player but before the Xcode process runs, you’ll need to check out Unity ID and learn how to include the Xcode Manipulation API in your project. You’ll also need to either define a UCB post-Export method or else utilize the postProcessBuildAttribute on your own method:

If you need more assistance, perhaps other users on this forum can provide guidance or a link to a tutorial on how this is typically done, what they’ve tried in UCB?

And to answer your specific question: using the Xcode Manipulation API does not require access to UCB Advanced Settings, but using a UCB post-Export method does.