Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is Mono really cross-platform?

Official Mono project website says that Mono works successfully on Windows, Linux and Mac OS X. Is that true?
I want to build applications which work at least on Windows and Linux. Is it possible with Mono?

P.S. I know that similar topics already exist (e.g. Cross platform .Net?), but they may be outdated.

like image 837
Sergey Avatar asked Oct 20 '09 11:10

Sergey


2 Answers

Yes it is possible.

It generally works quite well, but I don't think there are any large/medium scale applications on Mono. There are several other apps you may want to have a browse through.

As Mono is a subset of the real thing (.NET), to maintain the best compatibility, you may have to develop in a Mono supported platform (e.g. Linux), then once it works there you can pretty much be certain that it will work on .NET. I'm saying this because although highly compatible with .NET, Mono is not as many people think fully compatible with the entire .NET stack and has other limitations too.

I have done development on it and stumbled across several of those. I hope your project does not have as many .NET dependencies as mine.

like image 58
NT_ Avatar answered Sep 22 '22 18:09

NT_


It sure is. Mono will work across all three platforms, but when you say "building an application" you need to be aware that not all the .net namespaces have been ported across to Mono. They have placed a heavy focus on porting the "web bits" across so you shouldn't have too much trouble writing a web application that will work cross platform, but if you're looking to write a client application, you might need to check out the moonlight project which is a silverlight implementation for Linux.

like image 38
lomaxx Avatar answered Sep 22 '22 18:09

lomaxx