[Mono-ue] Unable to Debug or Produce an EXE

Michael Hutchinson m.j.hutchinson at gmail.com
Sat Jan 10 23:39:04 UTC 2015


It looks like packaging is successful but something in the class
loader is failing. It's strange it only happens for packaged builds.
Could you try running it in the VS C++ debugger and inspect the
MonoUnrealClass when the assertion fails to see which class is
failing? If we know more about what class is failing to load them
maybe we could reproduce it.

Also, looking at your original email, I think #1 sounds like the
intermittent shadow copy failure we've been seeing when multiple
copies of UE are loading the assemblies.

- m

On 9 January 2015 at 22:19, Ryan Burnham <nitro52 at iinet.net.au> wrote:
> It seems to complete ok. I've attached the Unreal Engine Editor output log and the list of files it creates
>
> -----Original Message-----
> From: Michael Hutchinson [mailto:m.j.hutchinson at gmail.com]
> Sent: Saturday, 10 January 2015 1:39 AM
> To: Ryan Burnham
> Cc: mono-ue
> Subject: Re: [Mono-ue] Unable to Debug or Produce an EXE
>
> That's strange that the Xamarin.UE4.Automation.csproj reference were broken, there's a BeforeBuild target that should restore the NuGet package.
>
> Does packaging complete successfully? Are you packaging a configuration for which you've built the engine and your project?
>
> - m
>
> On 9 January 2015 at 08:17, Ryan Burnham <nitro52 at iinet.net.au> wrote:
>> So far I have only been able to see my changes work within the UE editor.
>>
>>
>>
>> 1.       The first issue I have is when I hit Run in XS it starts the game
>> and opens a level. However it appears to be a really early version the
>> code when I didn’t have the Mono character working. No breakpoints are
>> hit. I tried the same thing in the Shooter sample but it doesn’t even
>> start the game. If I open XS from UE editor XS opens but does not open the solution.
>>
>>
>>
>> 2.       The second issue is that I can’t seem to create a standalone exe by
>> going File > Package Project > Windows > Win64. When I first tried the
>> build failed. Something about the cook failed and to check the logs. I
>> had a look at the logs and it seems like it couldn’t find
>>
>> a.       Mono.Cecil.dll
>>
>> b.      Mono.Cecil.Mdb.dll
>>
>> c.       Mono.Cecil.Pdb.dll
>>
>> d.      Mono.Cecil.Rocks.dll
>>
>> I found in the Xamarin.UE4.Automation project the references were
>> broken. I did a search and found them in
>> UnrealEngine\Engine\Plugins\XamarinUE4\MonoRuntime\Source\Programs\packages\Mono.Cecil.0.9.5.4\lib\net40.
>> So I added them. This fixed the build but when I try to run the exe
>> created I get the error below.  The output only has the exe In a Win64
>> folder, should there be other binaries? Any idea’s how to figure out the problem?
>>
>>
>>
>> Assertion failed: MonoUnrealClass.NativeParentClass [File:E:\Source
>> Control\UnrealEngine\Engine\Plugins\XamarinUE4\MonoRuntime\Source\Mono
>> Runtime\Private\MonoUnrealClass.cpp]
>> [Line: 340]
>>
>>
>>
>> Stack:
>>
>> FWindowsPlatformStackWalk::StackWalkAndDump() 0xd123a3e6 + 0 bytes
>> [File=e:\source
>> control\unrealengine\engine\source\runtime\core\private\windows\window
>> splatformstackwalk.cpp:177]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> FDebug::AssertFailed() 0xd10a18be + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\core\private\misc\outputdev
>> ice.cpp:203]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> UMonoUnrealClass::MonoClassConstructor() 0xd369ae8a + 0 bytes
>> [File=e:\source
>> control\unrealengine\engine\plugins\xamarinue4\monoruntime\source\mono
>> runtime\private\monounrealclass.cpp:345]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> UClass::CreateDefaultObject() 0xd12820af + 44 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \class.cpp:2445]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> UClass::GetDefaultObject() 0xd12918d0 + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\public\uobject\
>> class.h:1932]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> ULinkerLoad::CreateExport() 0xd12ea92c + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \linkerload.cpp:3188]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> ULinkerLoad::IndexToObject() 0xd1301a12 + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \linkerload.cpp:3411]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> ULinkerLoad::operator<<() 0xd12daec3 + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \linkerload.cpp:3582]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> UClass::Serialize() 0xd12b6233 + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \class.cpp:2976]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> ULinkerLoad::Preload() 0xd130a2ff + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \linkerload.cpp:2754]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> ULinkerLoad::LoadAllObjects() 0xd130384d + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \linkerload.cpp:2501]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> LoadPackage() 0xd135d9f6 + 0 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \uobjectglobals.cpp:836]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode.exe]
>>
>> ResolveName() 0xd1368a21 + 74 bytes [File=e:\source
>> control\unrealengine\engine\source\runtime\coreuobject\private\uobject
>> \uobjectglobals.cpp:560]
>> [in C:\Users\Ryan\Documents\Unreal
>> Projects\CSharpTutorialCode\Build\WindowsNoEditor\CSharpTutorialCode\B
>> inaries\Win64\CSharpTutorialCode
>>
>>
>>
>>
>> _______________________________________________
>> Mono-ue mailing list
>> Mono-ue at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-ue
>>
>
>
>
> --
> Michael Hutchinson ~ https://mhut.ch



-- 
Michael Hutchinson ~ https://mhut.ch


More information about the Mono-ue mailing list