iOS Packaging fails because of xattr

Hi all
I’m on Mac OS 10.13.6, and whenever I try and Launch my project it ends up failing. I see this in the log near the end:

/Users/johnher/Documents/Unreal Projects/StarDomain 4.14/Binaries/IOS/Payload/StarDomain.app: resource fork, Finder information, or similar detritus not allowed

Googling this shows that the .app file got some xattr assigned to it somehow. But no matter how many times I clear all extended attributes from all files in my project, the .app file always ends up with some extended attributes on it.

In typical fashion I managed to solve this a day after making this post. So maybe this information would be helpful to someone in the future:

It seems MacOS adds the FinderInfo extended attribute if the OS is using the file. In my case, I had iCloud Sync turned on, which includes the Documents folder. And since Unreal’s default Projects Folder is under Documents, it meant that entire folder was getting synced to the cloud with every change that happens during Launch, which also then sets the FinderInfo extended attribute on those files.

The solution was to move my project out of the Documents folder and into my Home folder. Then I cleared all extended attributes (using “sudo xattr -cr ./” from inside the project’s folder). Then I loaded the engine and manually browsed to the project, and it built just fine.

1 Like

still relevant in 2020! thanks for saving me some hair today.

A weird one, because I had no issues building from inside of a cloud synced folder prior to switching to a source-compiled version of the engine, so I suspect the Epic Launcher version of the engine works around this somehow, though I admit I have no idea how that could be…

Either way, appreciate you following up on your own post here to help others!

Totally saved my butt! Spent an entire day in vein trying to fix my issue. THANK GOD I found this. This was 100% the fix for me. Thank you for your follow up!

With UE5 this happens too. Thanks for posting this answer!