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

win32 --mixed-mode can't load mscorlib.dll, but it is present #20976

Open
HinTak opened this issue Mar 26, 2021 · 1 comment
Open

win32 --mixed-mode can't load mscorlib.dll, but it is present #20976

HinTak opened this issue Mar 26, 2021 · 1 comment

Comments

@HinTak
Copy link
Contributor

HinTak commented Mar 26, 2021

revisiting #10268 , now the error sufficiently different so I am opening a new bug:

The assembly mscorlib.dll was not found or could not be loaded.
It should have been installed in the `C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll' directory.
H:\>"C:Program Files/Mono/bin/mono.exe" --version
Mono JIT compiler version 6.12.0 (Visual Studio built mono)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       normal
        Notification:  Thread + polling
        Architecture:  x86
        Disabled:      none
        Misc:          softdebug
        Interpreter:   yes
        Suspend:       preemptive
        GC:            sgen (concurrent by default)

This is just the official build https://download.mono-project.com/archive/6.12.0/windows-installer/mono-6.12.0.107-gtksharp-2.12.45-win32-0.msi
, running under wine staging 6.2 .

"C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll" is definitely present there (I didn't do anything different from just pressing next with the installer). Maybe wine's mscoree.dll (which mscorlib.dll depends on) is not good enough? Or maybe support for mixed-mode assembly is still buggy?

Steps to Reproduce

  1. install https://download.mono-project.com/archive/6.12.0/windows-installer/mono-6.12.0.107-gtksharp-2.12.45-win32-0.msi under wine
  2. download the fontval hybrid build from the url referenced
"C:Program Files/Mono/bin/mono.exe" --mixed-mode  z:/tmp/RELEASE_2016_02_08.hybrid/bin/FontValidator.exe -file z:/usr/share/fonts/wine-times-new-roman-fonts/times.ttf +raster-tests -report-dir z:/tmp/b

or any font, really.

Current Behavior

The assembly mscorlib.dll was not found or could not be loaded.
It should have been installed in the `C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll' directory.

Expected Behavior

should run complete.

On which platforms did you notice this

[ ] macOS
[ ] Linux
[*] Windows

Version Used:

H:\>"C:Program Files/Mono/bin/mono.exe" --version
Mono JIT compiler version 6.12.0 (Visual Studio built mono)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       normal
        Notification:  Thread + polling
        Architecture:  x86
        Disabled:      none
        Misc:          softdebug
        Interpreter:   yes
        Suspend:       preemptive
        GC:            sgen (concurrent by default)

Stacktrace

The assembly mscorlib.dll was not found or could not be loaded.
It should have been installed in the `C:\Program Files\Mono\lib\mono\4.5\mscorlib.dll' directory.

without --mixed-mode it crashes wine, which is not surprising:

Unhandled exception: page fault on read access to 0x00000080 in 32-bit code (0x00000080).
Register dump:
 CS:0023 SS:002b DS:002b ES:002b FS:0063 GS:006b
 EIP:00000080 ESP:0039f6cc EBP:0039f718 EFLAGS:00010206(  R- --  I   - -P- )
 EAX:00000080 EBX:01487a30 ECX:01488180 EDX:00000012
 ESI:00000018 EDI:01488030
Stack dump:
0x0039f6cc:  03dcb5a0 01488180 00000000 01488170
0x0039f6dc:  01488170 0039f720 0039f758 00000018
0x0039f6ec:  01487960 01488130 01488170 01488180
0x0039f6fc:  0039f720 00000012 01487960 00000018
0x0039f70c:  00000018 01487960 01487a30 0039f758
0x0039f71c:  03dcb168 01488030 00000000 0039f74c
Backtrace:
=>0 0x00000080 (0x0039f718)
  1 0x03dcb168 (0x0039f758)
  2 0x03dcadf0 (0x0039f7c8)
  3 0x03dca414 (0x0039f7f8)
  4 0x0381ee98 (0x0039fa48)
  5 0x03817ef8 (0x0039fb08)
  6 0x02d322cc (0x0039fb48)
  7 0x02d32054 (0x0039fbb8)
  8 0x02d30564 (0x0039fbe8)
  9 0x029e1e58 (0x0039fc68)
  10 0x029e209a (0x0039fcb0)
  11 0x101827f5 mono_jit_runtime_invoke+0x3e4(method=0xd7bb38, obj=0x0(nil), params=0x39fd54, exc=(nil), error=0x39fd80) in mono-2.0-sgen (0x0039fcfc)
0x00000080: -- no code accessible --
Please paste the stack trace here if available.
@HinTak
Copy link
Contributor Author

HinTak commented Mar 26, 2021

It seems to have gone worse since I last tested it - it used to get a bit further and output runtime version then reflects on the input font name, according to what I wrote in #10268 :

WARNING: The runtime version supported by this application is unavailable.
Using default runtime: v4.0.30319
c:/Windows/Fonts/times.ttf (file 1 of 1)
... a lot of info...

these are still outputted without --mixed-mode.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant