Thanks for all the posts.
So the license part (due to statically linking) is still the major barrier for
The toolchain and info on HOW to statically link has been mentioned by Miguel -
and was used to get Unity3D working on iPhone. For those who don't know about
Unity, it has major support for MONO in its scripting language, and uses AOT to
compile. It uses XCODE to compile and run the game.
Apple allows people to sell apps written by Unity3D now - which contains Mono
code, as well as MonoTouch apps so I don't think it's a problem anymore.
I've got NO problem with people wanting to get paid for their efforts. But, as
a hobbyist who is never going to distribute my program, $400 is out of question.
I've even questioned whether or not it makes sense to use Unity to build my
application, but the cost there (and programming required) would need
justification, i.e. making programs to SELL to make back the cost of the tools.
I just want my program on a tablet... is that SO crazy?
From: Laurent Etiemble <laurent.etiem...@monobjc.net>
To: Monobjc Devel List <email@example.com>
Sent: Thu, July 21, 2011 8:54:56 AM
Subject: [firstname.lastname@example.org] Re: Delivery to the mailing list
>---------- Message transféré ----------
>From: Matt Emson <memson.li...@googlemail.com>
>Date: Thu, 21 Jul 2011 14:35:03 +0100
>Subject: Re: [email@example.com] iPhone / iPad ?
>Okay - here is the official line (having had this discussion with Miguel
>after the MonoTouch beta went gold and they announced the steep pricing
>pretty much made it unworkable for me and many hobbyist coders) : No, not
>possible. This is for a few reasons:
>1) Mono is licensed under many different OSS Licenses - but key parts of
>runtime as LGPL. Basically, if you static link, you are required to get a
>2) Apple do not permit GPL code in the App Store.
>3) To create iPhone apps, the mono runtime needs to be statically inked
>the code needs to be AOT compiled to ARM native code. Therefore, you NEED
>static bound runtime.
>When cornered, Miguel pretty much said - there is no way to legally do
>without paying for a commercial license, and $399 was the cheapest that
>Novell had aver sold a single seat license to a developer.
>I looked at the alternatives, and they are slim. Portable.Net has even
>bigger restrictions and is very out of date now. The Microsoft
>implementations are either close, or fairly incomplete (micro.net) or not
>licensed for commercial use (the Community Source version of the compiler
>that they release a number of years ago and then updated for .Net 2.0).
>There's another option - someone created their own simple .Net runtime for
>embedded use, all free and perfectly able to work - but it has no UI kit
>I only started to slowly look at embedding it before my dev account lapsed
>and I decided not to renew. Google "DNA" or "DotNet Anywhere" for more
>info. I've ported it at least to an intel Mac and run on Windows, so it
>might work. The issues I had was lack of linking ability for iPhone. You'd
>need to incorporate the App kit in to the runtime to get it to function
>peoperly. I got as far as routing managed calls to native calls embedded
>the actual exe runtime (it was a bit hacky, but it was working) so it
>The other alternative would be to use the Mono compilers, but rewrite the
>runtime... DNA might work for that, or maybe at a push the Micro.Net...
>never looked at it from that angle, so can;t comment further,
>On 21/07/2011 13:55, Laurent Etiemble wrote:
>>There are several points before running Monobjc on an iOS device:
>>- Getting Mono to build and run on iOS (feasible with the right
>>- Getting the native part of Monobjc to build and run on iOS (one
>>is libFFI, but is seems that there is now a support for iOS devices)
>>- Be able to link and shrink all the assemblies so the IL code is the
>>smallest one (this is the hardest part)
>>- Wrapping everything into an executable (this looks like the
>>done on the Mac), and link statically with Mono.
>>IMHO, the tooling part is the one that requires the heavy work. In
>>addition, the last time I took a look, a license was needed to use
>>static linking of Mono.
>>Regards, Laurent Etiemble.
>>2011/7/18 Erik Touve <eto...@sbcglobal.net>
>>I was wondering if it's possible to wrap the iOS SDK
>>>Unity does an excellent job of mono on iOS.
>>>I fully support Ximian / Novell / now Xamarin efforts. I
>>>the .NET implementation. But, I'm not willing for fork
>>>$400 for in-house application development - something I'm
>>>ever going to sell through any store.
>>>In theory I suppose monobjc could do the same thing as
>>>MonoTouch. I'm certain there's a lot of work connecting
>>>the dots... for example specialized mono compilation.
>>>Are there plans to do this eventually? Can I do this
>>>Are there crazy licensing issues?