Jump to content

Ninject and GeoVR issues launching AFV on Linux via Wine


Cian Ormond
 Share

Recommended Posts

I'm trying to install AFV on Linux (of course VRC works perfectly) using the AFV User Guide tutorial (modified using wine from apt instead of brew and a different path) and it's giving me the errors shown in this log once I run it:

Quote

Unhandled Exception:
System.TypeLoadException: Invalid type GeoVR.Client.UserClient for instance field GeoVR.VATSIM.VATSIMClient.WinForms.MainForm:GeoUserClient
  at (wrapper managed-to-native) System.RuntimeType.GetConstructors_native(System.RuntimeType,System.Reflection.BindingFlags)
  at System.RuntimeType.GetConstructors_internal (System.Reflection.BindingFlags bindingAttr, System.RuntimeType reflectedType) [0x00008] in <7713cb95b33244ed9608bf0b23fbdce9>:0
  at System.RuntimeType.GetConstructorCandidates (System.String name, System.Reflection.BindingFlags bindingAttr, System.Reflection.CallingConventions callConv, System.Type[] types, System.Boolean allowPrefixLookup) [0x00047] in <7713cb95b33244ed9608bf0b23fbdce9>:0
  at System.RuntimeType.GetConstructors (System.Reflection.BindingFlags bindingAttr) [0x00000] in <7713cb95b33244ed9608bf0b23fbdce9>:0
  at Ninject.Selection.Selector.SelectConstructorsForInjection (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Strategies.ConstructorReflectionStrategy.Execute (Ninject.Planning.IPlan plan) [0x00017] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Planner+<>c__DisplayClass9_0.<CreateNewPlan>b__0 (Ninject.Planning.Strategies.IPlanningStrategy s) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Infrastructure.Language.ExtensionsForIEnumerableOfT.Map[T] (System.Collections.Generic.IEnumerable`1[T] series, System.Action`1[T] action) [0x00010] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Planner.CreateNewPlan (System.Type type) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Planner.GetPlan (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Activation.Providers.StandardProvider.Create (Ninject.Activation.IContext context) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Activation.Context.ResolveInternal (System.Object scope) [0x00034] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Activation.Context.Resolve () [0x0008b] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00282] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00192] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.ResolutionExtensions.GetResolutionIterator (Ninject.Syntax.IResolutionRoot root, System.Type service, System.Func`2[T,TResult] constraint, System.Collections.Generic.IEnumerable`1[T] parameters, System.Boolean isOptional, System.Boolean isUnique) [0x0002f] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.ResolutionExtensions.Get[T] (Ninject.Syntax.IResolutionRoot root, Ninject.Parameters.IParameter[] parameters) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at GeoVR.VATSIM.VATSIMClient.WinForms.Program.Main () [0x00092] in <a906ff30dc024fed818c4f2cd432ebef>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeLoadException: Invalid type GeoVR.Client.UserClient for instance field GeoVR.VATSIM.VATSIMClient.WinForms.MainForm:GeoUserClient
  at (wrapper managed-to-native) System.RuntimeType.GetConstructors_native(System.RuntimeType,System.Reflection.BindingFlags)
  at System.RuntimeType.GetConstructors_internal (System.Reflection.BindingFlags bindingAttr, System.RuntimeType reflectedType) [0x00008] in <7713cb95b33244ed9608bf0b23fbdce9>:0
  at System.RuntimeType.GetConstructorCandidates (System.String name, System.Reflection.BindingFlags bindingAttr, System.Reflection.CallingConventions callConv, System.Type[] types, System.Boolean allowPrefixLookup) [0x00047] in <7713cb95b33244ed9608bf0b23fbdce9>:0
  at System.RuntimeType.GetConstructors (System.Reflection.BindingFlags bindingAttr) [0x00000] in <7713cb95b33244ed9608bf0b23fbdce9>:0
  at Ninject.Selection.Selector.SelectConstructorsForInjection (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Strategies.ConstructorReflectionStrategy.Execute (Ninject.Planning.IPlan plan) [0x00017] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Planner+<>c__DisplayClass9_0.<CreateNewPlan>b__0 (Ninject.Planning.Strategies.IPlanningStrategy s) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Infrastructure.Language.ExtensionsForIEnumerableOfT.Map[T] (System.Collections.Generic.IEnumerable`1[T] series, System.Action`1[T] action) [0x00010] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Planner.CreateNewPlan (System.Type type) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Planning.Planner.GetPlan (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Activation.Providers.StandardProvider.Create (Ninject.Activation.IContext context) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Activation.Context.ResolveInternal (System.Object scope) [0x00034] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.Activation.Context.Resolve () [0x0008b] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00282] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00192] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.ResolutionExtensions.GetResolutionIterator (Ninject.Syntax.IResolutionRoot root, System.Type service, System.Func`2[T,TResult] constraint, System.Collections.Generic.IEnumerable`1[T] parameters, System.Boolean isOptional, System.Boolean isUnique) [0x0002f] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at Ninject.ResolutionExtensions.Get[T] (Ninject.Syntax.IResolutionRoot root, Ninject.Parameters.IParameter[] parameters) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0
  at GeoVR.VATSIM.VATSIMClient.WinForms.Program.Main () [0x00092] in <a906ff30dc024fed818c4f2cd432ebef>:0 Cannot load assembly mscorlib
0009:err:mscoree:RuntimeHost_ExitProcess Process should have exited
0009:err:mscoree:expect_no_runtimes Process exited with a Mono runtime loaded.

It appears to be a .NET issue, but I've no idea. Any help would be appreciated!

Link to comment
Share on other sites

  • 3 months later...
On 11/11/2020 at 7:54 AM, Cian Ormond said:

I'm trying to install AFV on Linux (of course VRC works perfectly) using the AFV User Guide tutorial (modified using wine from apt instead of brew and a different path) and it's giving me the errors shown in this log once I run it:

It appears to be a .NET issue, but I've no idea. Any help would be appreciated!

Bump on this one, EuroScope works perfectly for me with full functionality of the UK Controller Pack but the AFV standalone client gives a near carbon copy of this error when run through the terminal. Am using Arch Linux . Here is the output of a neofetch on my system:

Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish
[23:29:40] [email protected] /home/adam  
> neofetch
             __                       [email protected] 
         _=(SDGJT=_                   -------------- 
       _GTDJHGGFCVS)                  OS: Arch Linux x86_64 
      ,GTDJGGDTDFBGX0                 Host: 20M50013UK ThinkPad L380 
     JDJDIJHRORVFSBSVL-=+=,_          Kernel: Linux 5.12.0-rc2-1-mainline 
    IJFDUFHJNXIXCDXDSV,  "DEBL        Uptime: 36 mins 
   [LKDSDJTDU=OUSCSBFLD.   '?ZWX,     Packages: 1661 (pacman) 
  ,LMDSDSWH'     `DCBOSI     DRDS],   Shell: /usr/bin/fish 3.2.0-46-ga7df92e18 
  SDDFDFH'         !YEWD,   )HDROD    Resolution: 1920x1080 @ 60.02Hz 
 !KMDOCG            &GSU|\_GFHRGO\'   DE: Plasma 5.21.2 
 HKLSGP'           __\TKM0\GHRBV)'    WM: KWin 
JSNRVW'       __+MNAEC\IOI,\BN'       WM Theme: Breeze 
HELK['    __,=OFFXCBGHC\FD)           Theme: Breeze Dark [Plasma] 
?KGHE \_-#DASDFLSV='    'EF           Icons: breeze-dark [Plasma] 
'EHTI                    !H           Font: Ubuntu 0 11 [Plasma] 
 `0F'                    '!           Terminal: konsole 
                                      CPU: Intel i5-8250U (4) @ 3.400GHz [71.0°C] 
                                      CPU Usage: 26% 
                                      GPU: Intel UHD Graphics 620 
                                      Memory: 2.75GiB / 31.12GiB (8%) 
                                      Disk (/): 29G / 290G (11%) 
                                      Battery0: 52% [Discharging] 

                                                              
                                                              


[23:29:44] [email protected] /home/adam  
> wine --version
wine-6.3 (Staging)
[23:29:47] [email protected] /home/adam  
> 

The error:
 

Welcome to fish, the friendly interactive shell
Type help for instructions on how to use fish
[23:31:38] [email protected] /home/adam/.wine/dosdevices/c:/AudioForVATSIM  
> wine ./AudioForVATSIM.exe
002c:fixme:winediag:LdrInitializeThunk wine-staging 6.3 is a testing version containing experimental patches.
002c:fixme:winediag:LdrInitializeThunk Please mention your exact version when filing bug reports on winehq.org.
0024:fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.7.2" not implemented
0024:fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.7.2" not implemented
0024:fixme:ntdll:NtQuerySystemInformation info_class SYSTEM_PERFORMANCE_INFORMATION

Unhandled Exception:
System.TypeLoadException: Invalid type GeoVR.Client.UserClient for instance field GeoVR.VATSIM.VATSIMClient.WinForms.MainForm:GeoUserClient
  at (wrapper managed-to-native) System.RuntimeType.GetConstructors_native(System.RuntimeType,System.Reflection.BindingFlags)
  at System.RuntimeType.GetConstructors_internal (System.Reflection.BindingFlags bindingAttr, System.RuntimeType reflectedType) [0x00008] in <3d7a9349295c42b6abb3487b4473a6b8>:0 
  at System.RuntimeType.GetConstructorCandidates (System.String name, System.Reflection.BindingFlags bindingAttr, System.Reflection.CallingConventions callConv, System.Type[] types, System.Boolean allowPrefixLookup) [0x00047] in <3d7a9349295c42b6abb3487b4473a6b8>:0 
  at System.RuntimeType.GetConstructors (System.Reflection.BindingFlags bindingAttr) [0x00000] in <3d7a9349295c42b6abb3487b4473a6b8>:0 
  at Ninject.Selection.Selector.SelectConstructorsForInjection (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Strategies.ConstructorReflectionStrategy.Execute (Ninject.Planning.IPlan plan) [0x00017] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Planner+<>c__DisplayClass9_0.<CreateNewPlan>b__0 (Ninject.Planning.Strategies.IPlanningStrategy s) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Infrastructure.Language.ExtensionsForIEnumerableOfT.Map[T] (System.Collections.Generic.IEnumerable`1[T] series, System.Action`1[T] action) [0x00010] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Planner.CreateNewPlan (System.Type type) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Planner.GetPlan (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Activation.Providers.StandardProvider.Create (Ninject.Activation.IContext context) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Activation.Context.ResolveInternal (System.Object scope) [0x00034] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Activation.Context.Resolve () [0x0008b] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00282] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00192] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.ResolutionExtensions.GetResolutionIterator (Ninject.Syntax.IResolutionRoot root, System.Type service, System.Func`2[T,TResult] constraint, System.Collections.Generic.IEnumerable`1[T] parameters, System.Boolean isOptional, System.Boolean isUnique) [0x0002f] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.ResolutionExtensions.Get[T] (Ninject.Syntax.IResolutionRoot root, Ninject.Parameters.IParameter[] parameters) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at GeoVR.VATSIM.VATSIMClient.WinForms.Program.Main () [0x00092] in <a906ff30dc024fed818c4f2cd432ebef>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeLoadException: Invalid type GeoVR.Client.UserClient for instance field GeoVR.VATSIM.VATSIMClient.WinForms.MainForm:GeoUserClient
  at (wrapper managed-to-native) System.RuntimeType.GetConstructors_native(System.RuntimeType,System.Reflection.BindingFlags)
  at System.RuntimeType.GetConstructors_internal (System.Reflection.BindingFlags bindingAttr, System.RuntimeType reflectedType) [0x00008] in <3d7a9349295c42b6abb3487b4473a6b8>:0 
  at System.RuntimeType.GetConstructorCandidates (System.String name, System.Reflection.BindingFlags bindingAttr, System.Reflection.CallingConventions callConv, System.Type[] types, System.Boolean allowPrefixLookup) [0x00047] in <3d7a9349295c42b6abb3487b4473a6b8>:0 
  at System.RuntimeType.GetConstructors (System.Reflection.BindingFlags bindingAttr) [0x00000] in <3d7a9349295c42b6abb3487b4473a6b8>:0 
  at Ninject.Selection.Selector.SelectConstructorsForInjection (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Strategies.ConstructorReflectionStrategy.Execute (Ninject.Planning.IPlan plan) [0x00017] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Planner+<>c__DisplayClass9_0.<CreateNewPlan>b__0 (Ninject.Planning.Strategies.IPlanningStrategy s) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Infrastructure.Language.ExtensionsForIEnumerableOfT.Map[T] (System.Collections.Generic.IEnumerable`1[T] series, System.Action`1[T] action) [0x00010] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Planner.CreateNewPlan (System.Type type) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Planning.Planner.GetPlan (System.Type type) [0x00026] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Activation.Providers.StandardProvider.Create (Ninject.Activation.IContext context) [0x00053] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Activation.Context.ResolveInternal (System.Object scope) [0x00034] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.Activation.Context.Resolve () [0x0008b] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00282] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request, System.Boolean handleMissingBindings) [0x00192] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.KernelBase.Resolve (Ninject.Activation.IRequest request) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.ResolutionExtensions.GetResolutionIterator (Ninject.Syntax.IResolutionRoot root, System.Type service, System.Func`2[T,TResult] constraint, System.Collections.Generic.IEnumerable`1[T] parameters, System.Boolean isOptional, System.Boolean isUnique) [0x0002f] in <3a736e96a8834fcb9bffa7392698e62c>:0 
  at Ninject.ResolutionExtensions.Get[T] (Ninject.Syntax.IResolutionRoot root, Ninject.Parameters.IParameter[] parameters) [0x00000] in <3a736e96a8834fcb9bffa7392698e62c>:0 
[23:31:44] [email protected]

I have .net 4.7.2 installed.

Link to comment
Share on other sites

  • 1 month later...
On 11/11/2020 at 2:54 AM, Cian Ormond said:

It appears to be a .NET issue, but I've no idea. Any help would be appreciated!

It is indeed a .NET issue! Make sure to install the .NET framework (4.7.X or later; I tested with 4.8) from Microsoft for via Winetricks and it should work!

Link to comment
Share on other sites

22 hours ago, Owen Wang said:

It is indeed a .NET issue! Make sure to install the .NET framework (4.7.X or later; I tested with 4.8) from Microsoft for via Winetricks and it should work!

For me, I already have the latest .net framework and winetricks installed. It still spits the same error.

Link to comment
Share on other sites

16 hours ago, Adam Tazul said:

For me, I already have the latest .net framework and winetricks installed. It still spits the same error.

Hmm... that is weird. What version of wine are you using? (And is it staging?) Also, what version of .NET did you install?

Link to comment
Share on other sites

6 hours ago, Owen Wang said:

Hmm... that is weird. What version of wine are you using? (And is it staging?) Also, what version of .NET did you install?

I am using Wine 6.3 staging with .net 4.8

Link to comment
Share on other sites

  • 3 weeks later...
On 4/15/2021 at 8:17 AM, Adam Tazul said:

Oh i thought that winetricks was Wine's native Linux .NET thing... I already have wine-mono installed (since it is an optional dependency for wine). How can I launch AFV with wine-mono?

Sorry for the late response. I don't think you need to specifically launch it separately, I have it installed and whenever I install a .NET program I just open the installer with "wine (executable)" and launch it once installed from the shortcut it installs with.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...