Mono Versions in Unity 3.5.7 and 4.3.4
Recently, I needed to figure out which versions of Mono Unity is currently supporting. I had to do a little digging to find out, so I thought I’d post the information here to help others who might need the information.
One note: Mono versions don’t correspond to C# / .NET versions at all, and .NET feature support varies so a direct mapping of Mono version to .NET version is problematic. That being said, here is a rough mapping of versions:
Mono Version
|
.NET Version
|
2.0
|
API roughly equivalent to .NET 2.0
C# 2.0
|
2.6
|
LINQ to SQL, Partial WCF
|
2.8
|
Roughly .NET 4.0, C# 4.0
|
2.10
|
C# 5.0
|
I checked the latest version in Unity 4.3.4 and 3.5.7 by running mono –V on the frameworks from the Unity package. Unity ships with two versions of Mono, an older version in the “Mono” directory and a newer one in the “MonoBleedingEdge” directory. Both are badly out of date (Mono 2.10.8 is no longer receiving backports).
From the Mono directory that ships with Unity 3.5.7 and 4.3.4:
Mono JIT compiler version 2.6.5 (tarball Fri Nov 29 18:37:08 CET 2013)
Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com
TLS: normal
GC: Included Boehm (with typed GC)
SIGSEGV: altstack
Notification: Thread + polling
Architecture: x86
Disabled: none
From the MonoBleedingEdge directory, mono –V is reporting 2.10.2 (Unity 4.3.5) or 2.10.1 (Unity 3.5.7):
Mono JIT compiler version 2.10.2 (tarball Fri Nov 2 22:02:08 CET 2012)
Copyright (C) 2002-2011 Novell, Inc and Contributors. www.mono-project.com
TLS: normal
SIGSEGV: normal
Notification: kqueue
Architecture: x86
Disabled: none
Misc: softdebug
LLVM: supported, not enabled.
GC: Included Boehm (with typed GC)
It looks like there has been no attempt to upgrade the Mono version shipped with Unity between the 3.x and 4.x releases. Maybe “if it ain’t broken” is the strategy here, but it would be nice to pick up some of the features and bug fixes from newer versions of Mono.
Comments
Post a Comment