1

Starting our application on a client's machine where mono is not installed works. But the application fails to start, with the following error, on the same machine if mono is installed

Unhandled Exception: System.TypeInitializationException: The type initializer for 'GLib.Marshaller' threw an exception. ---> System.TypeInitializationException: The type initializer for 'Sys' threw an exception. ---> System.EntryPointNotFoundException: SystemNative_LChflagsCanSetHiddenFlag assembly: type: member:(null)

The mkbundle command used to create the application

mkbundle -v -o appname --simple --keeptemp appname.exe --config ./config --machine-config /etc/mono/4.5/machine.config

config is copied from /etc/mono and modified to remove location specific informations.

What seems to happen is the application loads the installed mono instance which is a different version than the one packaged with the application and fails to find a symbol.

Is there a way to prevent mkbundled app from loading the installed mono and instead always rely on the bundled version?

skarack
  • 11
  • 1

0 Answers0