Search code examples
monoironpythonlinux-mint

IronPython + Mono error - could not load signature


When trying to run IronPython from Mono, I get the following error:

wayne@arglefraster ~/Downloads/IronPython-2.7.3 ⚘ mono ipy.exe              19:19:23
Could not load signature of IronPython.Runtime.List:get_Item due to: 
Failed to load language 'IronPython 2.7': Could not load type 'IronPython.Runtime.List' from assembly 'IronPython, Version=2.7.0.40, Culture=neutral, PublicKeyToken=7f709c5b713576e1'.

Fiddling around here on SO I found MONO_LOG_LEVEL=debug, and got this relevant information

Mono: Assembly Loader probing location: '/usr/lib/System.Numerics.exe'.
Mono: The following assembly referenced from /home/wayne/Downloads/IronPython-2.7.3/IronPython.dll could not be loaded:
     Assembly:   System.Numerics    (assemblyref_index=5)
     Version:    4.0.0.0
     Public Key: b77a5c561934e089
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/home/wayne/Downloads/IronPython-2.7.3/).

Mono: Failed to load assembly IronPython[0xddd180]

Mono: Could not load file or assembly 'System.Numerics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies.
Could not load signature of IronPython.Runtime.List:get_Item due to: 
Mono: gc took 520 usecs
Mono: Unloading domain ipy.exe[0x7faebd540cc0], assembly IronPython[0xddd180], ref_count=2

How can I get this working?


Solution

  • It turns out that the Numerics library wasn't installed:

    wayne@arglefraster ~/Downloads/IronPython-2.7.3 ⚘ apt-cache search mono numerics
    libmono-system-numerics4.0-cil - Mono System.Numerics library (for CLI 4.0)
    
    wayne@arglefraster ~/Downloads/IronPython-2.7.3 ⚘ sudo apt-get install libmono-system-numerics4.0-cil  
    

    And off it went!