Problems with Mono on Raspbian Jessie

After migrating to Jessie, I had several problems running C# applications on MONO. Those applications are running correctly on the previous versions of Raspbian/Debian.

As Jessie comes with biuld-in MONO, the solution is to manually downgrade version of MONO. Post [1] (cites below) was very helpful.

Edit your /etc/apt/sources.list.d/mono-xamarin.list and change:

deb http://download.mono-project.com/repo/debian wheezy main

to:

deb http://download.mono-project.com/repo/debian wheezy/snapshots/4.0.5.1 main

That will pin it to version 4.0.5.1.

FYI: Make sure that you do not have any alpha/beta repos for mono in any of your /etc/apt/sources/list.d/xxxxx.list files.

Basic Steps to Downgrade:

sudo apt-get remove mono-complete
# Edit your mono-xamarin.list and pin it to the version of your choice.
sudo apt-get update
sudo apt-get install mono-complete

Accessing older releases If for some reason you want to pin an older version of Mono rather than updating to the latest, you can modify the Debian repository to “wheezy/snapshots/X.XX.X” instead of “wheezy”. For example, “wheezy/snapshots/3.10.0” will lock you to that version.

These snapshots will cease receiving updates as soon as the next major Mono version gets uploaded – for example, as soon as Mono 3.12 gets uploaded, 3.10 will never receive updates.

Ref: Versions available:

http://download.mono-project.com/repo/debian/pool/main/m/mono/

Problem with SerialPort.DataReceived

There is a great work around described at:

http://antanas.veiverys.com/mono-serialport-datareceived-event-workaround-using-a-derived-class/

Rerefences

[1] http://stackoverflow.com/questions/33763177/install-older-version-of-mono

Other links

http://stackoverflow.com/questions/29982959/how-to-install-mono-4-0-1-on-debian-8
https://packages.debian.org/jessie/mono-complete
http://stackoverflow.com/questions/37779772/mono-system-typeloadexception-could-not-load-types
http://stackoverflow.com/questions/7598088/purpose-of-activator-createinstance-with-example
http://stackoverflow.com/questions/29328975/unhandled-exception-system-reflection-reflectiontypeloadexception-in-unity3d
http://forum.kerbalspaceprogram.com/index.php?/topic/121763-am-i-the-wrong-one-or-am-i-really-having-performance-issues/
http://blog.bennymichielsen.be/2016/03/14/getting-up-and-running-with-mono-and-raspberry-pi-3/
http://serverfault.com/questions/357323/how-can-i-list-my-open-ports-on-debian
http://www.mono-project.com/docs/about-mono/compatibility/
http://answers.unity3d.com/questions/1106476/cannot-load-classes-from-the-module-solved.html
http://www.mono-project.com/docs/getting-started/install/linux/
http://stackoverflow.com/questions/13589364/mono-3-0-0-could-not-load-file-or-assembly-system-web-extensions-dll-version

Leave a comment