UnrealInk icon indicating copy to clipboard operation
UnrealInk copied to clipboard

Packaged build crashes on startup

Open JohanHellgren opened this issue 4 years ago • 8 comments

InkCrash

So this happens when I try to run a packaged build, the above screenshot is from a completely unaltered exampled project in 4.26.1. Not sure if it's a bug or I'm missing some step in the packaging process?

JohanHellgren avatar Apr 15 '21 13:04 JohanHellgren

Getting a crash in a packaged dev build as well, although the error references another file. This is using Unreal 4.26.2

2021-04-17 19_34_54-UnrealInkExample (64-bit Development PCD3D_SM5)

Any help would be much appreciated. This plugin is a lifesaver and has been working great in editor so far.

Edit: After packaging a shipping build I am no longer having this issue.

DorminVR avatar Apr 18 '21 02:04 DorminVR

Thank you! Setting the build config to "shipping" worked for me too.

JohanHellgren avatar Apr 18 '21 14:04 JohanHellgren

An update, while shipping builds are running just fine on the computer with Unreal project it looks like whenever I try to run the build on another machine it crashes at launch. The error is "Fatal Error." Confirmed this is happening with 3 other machines so far. This is using Unreal 4.26.2.

fatal

As a test I created a dev build and ran it on another machine, and it also crashes at startup with the same "Fatal Error." Looking at the log, the following lines caught my eye:

[2021.04.19-19.26.34:949][  0]LogWindows: Failed to load '../../../UnrealInkExample/Plugins/UnrealInk/ThirdParty/Mono/lib/Win64/mono-2.0-sgen.dll' (GetLastError=126)
[2021.04.19-19.26.34:949][  0]LogWindows: File '../../../UnrealInkExample/Plugins/UnrealInk/ThirdParty/Mono/lib/Win64/mono-2.0-sgen.dll' does not exist
[2021.04.19-19.26.36:734][  0]LogWindows: Could not start crash report client using ../../../Engine/Binaries/Win64/CrashReportClient-Win64-Debug.exe 

Seems like part of the UnrealInk plugin isn't being packaged correctly for the build? I'm out of my depth here, so just a guess. Attached is the full crash log for reference.

@honaj I'd be curious if your shipping builds crash when trying them on another machine (without Unreal installed)?

CrashLog.txt

DorminVR avatar Apr 20 '21 17:04 DorminVR

Looks like Mono isn't being included in the build? Looking at readme file my interpretation is that everything should be included for running on Windows, but I might be misreading it. Unfortunately I don't have a second computer to test on.

JohanHellgren avatar Apr 21 '21 10:04 JohanHellgren

Yes. The issue is caused by the fact, that the plugin is linked against the development version of MONO, which in turn asks for vcruntime140d.dll and ucrtbased.dll which is not a part of the basic VC Runtime. For that reason, the plugin works everywhere, where VS is installed and not on ordinary machines. I learned this the hard way today when sending out a prototype test build.

metamorphium avatar Apr 23 '21 10:04 metamorphium

If you want a temporary workaround, you can put into your Binaries\Win64 folder files vcruntime140d.dll and ucrtbased.dll

You can find these files in c:\Windows\System32

The proper way is of course to rebuild everything using release libraries.

metamorphium avatar Apr 23 '21 11:04 metamorphium

You're a lifesaver Metamorpium! That workaround worked for me.

To be more specific, I dropped "vcruntime140d.dll" and "ucrtbased.dll" in:

UnrealInkExampleBuild\UnrealInkExample\Binaries\Win64\

And it resolved my issue.

DorminVR avatar Apr 23 '21 18:04 DorminVR

Apologies for this problem, I will get this fixed in the core library as soon as my life has relaxed a bit

DavidColson avatar Jul 04 '21 20:07 DavidColson