Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mono: Can't generate glue on Windows 10 #12357

Closed
ghost opened this issue Oct 23, 2017 · 7 comments
Closed

Mono: Can't generate glue on Windows 10 #12357

ghost opened this issue Oct 23, 2017 · 7 comments

Comments

@ghost
Copy link

ghost commented Oct 23, 2017

Operating system or device, Godot version, GPU Model and driver (if graphics related):
Windows 10, VS2017, latest master 804cab3

Issue description:
I followed tutorial of how to compile Godot with Mono support: http://docs.godotengine.org/en/latest/development/compiling/compiling_with_mono.html

I installed the latest Mono and compiled Godot using VS2017 with:
scons p=windows tools=yes module_mono_enabled=yes mono_glue=no

After it compiled I ran Godot with:
bin\godot.x11.tools.64 --generate-mono-glue modules\mono\glue

But Godot crashed with error:
Mono: Initializing module... ERROR: gdmono_MonoLogCallback: Mono: FALTAL ERROR, ABORTING! Logfile: C:/Users/MrMaidx/AppData/Roaming/Godot/mono/mono_logs/1508775754.txt At: modules\mono\mono_gd\gd_mono_log.cpp:73

Inside described log was:

Config attempting to parse: 'C:\Program Files\Mono\etc\mono\config'. (in domain Mono, info)
Assembly Loader probing location: 'C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll'. (in domain Mono, info)
Image addref mscorlib[000001BBB7BEBDB0] -> C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll[000001BBB8024840]: 2 (in domain Mono, info)
Image addref mscorlib[000001BBB7BEAC40] -> c:\godot\bin/mscorlib.dll[000001BBB7D2AAF0]: 2 (in domain Mono, info)
Prepared to set up assembly 'mscorlib' (c:\godot\bin/mscorlib.dll) (in domain Mono, info)
AOT: image 'c:\godot\bin/mscorlib.dll.dll' not found: Systᅢᄅm nemᅤᆵᅤᄒe nalᅢᄅzt uvedenᅢᄑ soubor.
 (in domain Mono, info)
AOT: image 'C:\Program Files\Mono\lib\/mono/aot-cache/amd64/mscorlib.dll.dll' not found: Systᅢᄅm nemᅤᆵᅤᄒe nalᅢᄅzt uvedenou cestu.
 (in domain Mono, info)
Assembly Loader loaded assembly from location: 'C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll'. (in domain Mono, info)
Config attempting to parse: 'c:\godot\bin/mscorlib.dll.config'. (in domain Mono, info)
Config attempting to parse: 'C:\Program Files\Mono\etc\mono\assemblies\mscorlib\mscorlib.config'. (in domain Mono, info)
Config attempting to parse: 'C:\Users\MrMaidx\.mono\assemblies\mscorlib\mscorlib.config'. (in domain Mono, info)
Unloading image C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll [000001BBB8024840]. (in domain Mono, info)

It seems that Godot is looking for some reason for file mscorlib.dll.dll. That looks like a typo was entered somewhere. When I rename the file mscorlib.dll to mscorlib.dll.dll in godot\bin folder glue can be generated (with many warnings) and Godot becomes compilable (and initializes Mono without problems).

@ghost ghost added this to the 3.0 milestone Oct 23, 2017
@ghost ghost mentioned this issue Oct 23, 2017
@neikeq
Copy link
Contributor

neikeq commented Oct 23, 2017

Is that the full log? Those are the expected messages. Mono is checking if there is an AOT library for the assembly, that's why it searches for mscorlib.dll.dll (mscorlib.dll.so on linux). No idea why placing mscorlib.dll renamed to mscorlib.dll.dll fixes your issue though...

@ghost
Copy link
Author

ghost commented Oct 23, 2017

After I compiled Godot for the first time there was no mscorlib.dll.dll in godot\bin folder. Only mscorlib.dll, GodotSharpTools.dll and mono-2.0-sgen.dll.
So I renamed it to mscorlib.dll.dll and then it worked.

@neikeq
Copy link
Contributor

neikeq commented Oct 23, 2017

What happens if you remove that mscorlib file from godot\bin?

@ghost
Copy link
Author

ghost commented Oct 24, 2017

Sorry for late response. If I delete it Godot seems to generate glue and then recompile properly.

@neikeq
Copy link
Contributor

neikeq commented Oct 24, 2017

Good. Was that mscorlib file created by scons when building?

@ghost
Copy link
Author

ghost commented Oct 24, 2017

Seems like it. I freshly cloned the master and the file was not there before and I didn't put it in godot\bin by hand.

@neikeq
Copy link
Contributor

neikeq commented Oct 29, 2017

Fixed by #12388.

@neikeq neikeq closed this as completed Oct 29, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant