[Mono-list] Embedding mono runtime

jacanosalado jacanosalado at gmail.com
Mon Mar 10 22:26:20 UTC 2014

Hi there!
I'm working on a project that is going to use the mono runtime
(libmonosgen/libmonoboehm) embedded inside an Android and iOS app.
I have some doubts related to the mono runtime license limitations on
embedded systems. So, I'm going to describe my project and ask you guys some

I've embedded a mono dll as well as a custom version of the mono runtime as
a binary file, statically compiled and linked to my Android and iOS app.
On Android, I'll be jitting the mono dll when the app runs and then invoking
some managed methods from my mono dll.
On iOS, I'll be aot-ing my mono dll and then invoking some managed methods
when the app runs (the same procedure I use on Android).

It seems like the mono runtime is using GNU Library GPL 2.0 and Xamarin is
holding the rights to license it on embedded systems like Android and iOS.

I want to know if I'll be complying with the terms of the GNU Library GPL
2.0 if I use the mono runtime inside my Android/iOS app the way I described

What about freely distributing and selling my app with this approach? Are we
allowed to do it under the GNU Library GPL 2.0.

Do I need special licenses from Xamarin in order to publish my app in Google
Play or App Store?

I've already considered using Xamarin.Android and Xamarin.iOS but, for this
project, I prefer to create me own native library in C/C++ for Android and
iOS and my custom trampoline code in order to have fine-grained control over
garbage collections, trampoline code (intermediate C code between C world
mono world) and probably debugging and profiling.

I think this is a good place to ask for this technical questions that aren't
completely solved here: http://www.mono-project.com/FAQ:_Licensing

In case my project doesn't comply with the terms of the GNU Library GPL 2.0,
it would be great if someone could help me to find out more details of the
"Ultimate Edition" license Xamarin is offering, as stated in the mono
project licensing faq I have already referenced here:

"Mono is available to be licensed commercially if the LGPL/GPL/X11
combination is not suitable for you. Xamarin offers commercial licensing
options to redistribute Mono under non-LGPL terms. If your organization
intends to redistribute software which embeds or bundles Mono, but is unable
to comply with the terms of GNU LGPL v2, the Ultimate Edition may be right
for you."

Thanks in advance!

View this message in context: http://mono.1490590.n4.nabble.com/Embedding-mono-runtime-tp4662200.html
Sent from the Mono - General mailing list archive at Nabble.com.

More information about the Mono-list mailing list