LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Programming (https://www.linuxquestions.org/questions/programming-9/)
-   -   Mono/.Net Program Compatibility (https://www.linuxquestions.org/questions/programming-9/mono-net-program-compatibility-304533/)

Kdr Kane 03-21-2005 10:11 PM

Mono/.Net Program Compatibility
 
I attended a an introduction to Mono presentation a couple of months ago. I was left with the impression that applications developed on Mono should run fine on Windows XP since XP has the .Net framework installed.

Now I'm totally stumped and feel I must have misunderstood.

Let me give you an example.

Here is a nice article Seven Cool Mono Apps that introduced me to an interesting application called Tomboy.

It's interesting because I wanted to run it on my Windows XP computer at work in addition to running it at home on Linux. However, the Tomboy site doesn't discuss the possibility of running the application on .Net. Am I completely wrong to assume it could? How would I go about installing and running Tomboy on a Windows computer (assuming it has the .Net framework installed)?

If it won't run on Windows, then I'm going to get depressed. Because it was my understanding that you could do cross-platform development.

os2 03-22-2005 01:42 PM

mono support only a few part of the .net framework

you can't know run big application (.net) with mono

mono will never 100% compatible with ms .net

by cross-platform, that mean you need to use mono under linux, under windows...

i don't read all .net licence... but on the web, you can read that ms can pursuit mono...

deiussum 03-22-2005 02:11 PM

I haven't used Mono, but I have used DotGNU a bit. With that, you can compile a C# app in Windows, and run it in Linux with the DotGNU runtime, and vice versa.

But, not everything supported by VS.Net is implemented in DotGNU. There are quite a few things that are implemented, such as Windows forms, etc. but every once in awhile you will run into something that isn't.

The same is probably true the other way. If Mono uses assemblies that don't come with the MS .Net implementation, it would run into problems that way too.

Kdr Kane 03-22-2005 02:15 PM

I hope somebody understands my question some day.

I'll be patient. :)

deiussum 03-22-2005 08:01 PM

Maybe you can enlighten us on what we didn't understand?

clausi 03-23-2005 03:03 PM

Re: Mono/.Net Program Compatibility
 
Quote:

Originally posted by Kdr Kane
Now I'm totally stumped and feel I must have misunderstood.
I believe, you can run Mono applications under Windows XP when you install the Mono framework for Windows.

As far as I understood, it works this way:

Code:

Mono app -> runs on -> Mono framework -> runs on -> Windows
or

Code:

Mono app -> runs on -> Mono framework -> runs on -> Linux
in contrast to:

Code:

.NET app -> runs on -> .NET framework -> runs on Windows only.
You probably thought:

Code:

Mono app -> runs on -> .NET framework -> runs on Windows.
This may work when the app is small, but in most cases an advanced application will use libraries that don't run on the .NET framework. For example, I'm not sure if you can use the GTK# libraries within .NET but these are needed by Tomboy. There is probably a way to set this up, but it's easier to install Mono besides .NET.

I'm no expert in Mono, though.

Kdr Kane 03-23-2005 03:22 PM

Thank you. You are correct.

I thought:
Code:

Mono app -> runs on -> .NET framework -> runs on Windows.
And I guess I'll look into it further.

I know that Mono developers are courting .Net developers to do their .Net development on Mono. It really doesn't make sense if their applications won't run on .Net if it's developed on Mono.

I'll also look at Tomboy a bit closer. If it does require GTK+, then you are absolutely correct. It won't run on .Net. Now why would somebody do that? :confused:

Thanks for addressing what I wrote. :)

deiussum 03-23-2005 03:51 PM

Maybe I wasn't as clear, but I thought I addressed the possibility that Tomboy was using libraries not supported by the .NET framework with the following statement:

Quote:

The same is probably true the other way. If Mono uses assemblies that don't come with the MS .Net implementation, it would run into problems that way too.
Anyway, DotGNU apps can run on the .NET Framework in Windows, and .NET apps run on the DotGNU framework in Linux, so long as you are using libraries common to both.

Basically, the .NET framework defines a binary standard much like the Java byte-code, and DotGNU compiles to that standard. I assumed Mono would also compile to that same standard, but I could be wrong.


All times are GMT -5. The time now is 04:03 PM.