Cannot package any plugins in 4.15 on mac osx. If I switch back to 4.14, plugins complete the packaging process just fine. Even tried new c++ project, create new plugin, package and it fails.
UATHelper: Package Plugin Task (Mac): RunUAT ERROR: AutomationTool failed to compile.
I tried packaging a 4.15.1 code project with a plugin on Mac and it packaged and ran successfully for me. Would it be possible to get the new test project that you created? Also, what are your packaging settings?
RunUAT ERROR: AutomationTool failed to compile.
I have Xcode 8.2.1 installed on my mac.
Sorry, I misunderstood that you were packaging the plugin itself, not the project plus the plugin. What type of plugin did you test this with? I tried using a Blueprint Library plugin, and it packaged fine for me on a Mac (using Xcode 8.2.1). Also, did you build the Engine from source code, or are you using the binary Engine installed through the Launcher?
Hi Tim, I created a new c++ project, then created a new blank plugin in the plugins window. After the plugin creation it tells me that I need to restart the editor, I do so. After restarting I can see my plugin in the plugins window, every thing looks good, my plugin doesn't do anything it's a blank plugin, then I try to package this blank plugin like I would if I was going to sell the plugin in the marketplace as an engine plugin. The packaging process fails. I tried the same with a basic window and menu bar button plugin and the same happens even tough the plugin works as it should (adds a button which opens the blank window). I'm using the launcher version of the engine. Same process works in 4.14.3 also from the launcher.
It still seems to be working fine for me in 4.15.1. Would it be possible to get the test project and plugin that you were using?
Packaging the plugin in the sample project that you provided also works for me. I was using Xcode 8.2.1. I do not believe we officially support 8.3 yet, but that will be coming soon.
What location were you trying to package the plugin to? I was testing by packaging it to an empty folder on the desktop. Also, is the log you provided in your initial post the entire log that is provided?
Just want to add that we are having precisely the same problem as of 4.15. Upgrading to latest Xcode and 4.15.1 has not helped.
Can I confirm Tim, that you are testing this by packaging a plugin via the automation tool? Ie. RunUAT.sh BuildPlugin -Plugin=[uplugin-path] -TargetPlatforms=Mac -Package=[output-path] -Rocket.
Even just selecting the 'Generate Xcode Project' option on a uproject file in 4.15 generates a similar error in the terminal, although it doesn't prevent that command from succeeding.
I had been packaging the plugin through the Plugins window in the Editor. I tried packaging by calling the automation tool through the Terminal as you suggested, and that also completed successfully for me. I also did not see any errors or warnings in the Terminal when choosing the Generate Xcode Project option.
@kamrann, thanks for sharing, good to know I'm not alone on this. @Tim the log on the original post was the one I got on 4.15 on the project I shared with you there's a file with the log I got on 4.15.1 and a video showing it fail on my system. I'm not on my mac (won't be for the rest of the week), but I recall looking at the log on 4.14 and there being a difference in one of the paths of a mono process that's being called. @kamrann can you share your log from 4.14? I'm seriously thinking something changed in the build process and somehow the installation failed to update our dev environments.
Unfortunately I don't have constant access to the Mac as I've done this work via remote login. For now we've got around this issue by just building the plugin in-place in the development project, then copying out the resulting binaries.
If I get chance to test again on 4.14 I'll try to update here with info.
Same identical problem here: UE 4.15.1, Xcode 8.3.2, macOS Sierra 10.12.4. The same script is successfully used to pre-package the C++ plugin under Windows, for both UE 4.14 and 4.15. Under Mac it works for UE 4.14, but fails with the same logs when used with UE 4.15.
No need to scroll down far, the error is simple, in 4.15 the Start UAT command fails and that's it for the packaging process, however in 4.14 it's successful and the packaging process is able to continue as expected.
Cannot open assembly 'AutomationTool.exe': No such file or directory.
Looking online for this error yields some results from people with similar issues using editors built from source. I'm using the launcher version.
Also looking at the file structure seems like the editor is installing its files in a different path than before.
Before it was: Users/Shared/UnrealEngine/4.14/Engine/Binaries/DotNet Inside this folder the AutomationTool.exe file is located.
So my suspicions of something messed up with our dev environments is more likely, specially when the 4.15 release notes states changes in the c++ build process or the fact that the default path changed. The thing is I'm not that familiar with environmental variables and paths to try to fix it myself other than maybe reinstalling my system from a fresh install which would be a drag.
@Kafu and @kamrann, can you package your games to Mac? Also can you guys verify your folder structure and if the AutomationTool.exe is present in the Binaries/DotNet folder?
I'm downloading 4.16 preview 1 to see what happens there.
Unfortunately I can't test a game build under Mac. But I confirm that the file "AutomationTool.exe" is missing from UE4.15, while it appears in two directories under UE4.14 (Engine/Binaries/DotNET/ and /Engine/Source/Programs/AutomationTool/obj/Deleopment).
In 4.16 I'm able to package the game but not plugins, same error.
I just wanted to check in on this issue again. Are you still having trouble with this? I am still unable to reproduce the issue on our Mac here, and the AutomationTool.exe file that you have mentioned is missing is present in both 4.15 and 4.16 for me. I have not yet been able to determine why my installation appears to be slightly different from yours.
Still having the issue, like others commented seems like I'm not alone. I suspect the AutomationTool.exe gets compiled and added to the folder the first time it's needed and in our dev environments this compilation is failing and because the file is not there the packaging process cannot move past this.
The AutomationTool.exe file should be included when the Engine is installed. I ran a quick test on my installation where I deleted the AutomationTool.exe file from the Engine, then ran Verify in the Launcher, and that re-downloaded the AutomationTool.exe file. So I think the missing file in your installation does contribute to this issue, but the big question is why that particular file is not being included when you install the Engine on your Mac while it is included for me.
Would it be possible to get the system information for your Mac so I can compare it to what I am using here?
Sure, here you go, let me know if you need more info.
Hey Tim. You're assuming the file is downloaded, but I think it's more likely that the verification process executes a script that builds the automation tool (it's a C# program so can be built in no time, and the launcher engine does ship with the C# source). In which case, it would be as @Ratamorph suggested, that the issue is that for some reason the C# build is failing for us.
I'm not in a position to test I'm afraid, but maybe someone else could try running the launcher Verify, and confirming that they still are missing the exe.
Yes, just tried now with v4.15.2.
and ended up with the same failed response.
Okay I've found a workaround for this issue.
If you install/verify from the launcher, you do get the automation tool executable, however this will get deleted and recompiled when you run the shell script, and the recompile is failing.
I noticed on an earlier version I had installed, the script was saying there was no project, so it was using the precompiled version. Turns out that was because engine source had not been installed on that version. So, if you run verify, then remove or rename AutomationTool.csproj in Engine/Source/Programs/AutomationTool, you should then be able to successfully package plugins.
It works perfectly :) Congrats to having spot the problem!
I successfully tested this workaround on both 4.15.3 and 4.16.0.
I confirm the problem is still present in UE 4.17.0. The workaround proposed by @kamrann still works.
Same problem in 4.16. Happy to report that @kamrann's workaround helps solve the issue! Thanks @kamrann.
It would be really nice if this were fixed in 4.19 so I don't have to remember to make this engine change again.
I confirm that the issue is still present in UE 4.19.0 and that the workaround by @kamrann still works.
@tim-lincoln any upstream patch for this issue?
As usual... this issue is still present in UE4.22 and - thankfully - the workaround is still working.
This issue is more than 2 years old now, anyone @staff ?
I can confirm the issue still happens is 4.18 on a brand new MacBook with a brand new OS installation and a brand new XCode and UE4.18 installation.