Mono 0.8

Release date: 11 Feb 2002

Hello!

Mono 0.8 has been released. The main difference between this and the snapshots is that I got to test this release, and included a pre-compiled version of the class libraries and the compiler for your total Linux enjoying experience.

The compiler can not yet self-host on Linux, as there are still various bugs present in our class libraries (check Paolo’s recent post to mono-list for details on what bits are missing if you want to help out).

Where can you get the goodies?

Mono runtime:

http://www.go-mono.com/archive/mono-0.8.tar.gz

Mono class library and compiler:

http://www.go-mono.com/archive/mcs-0.8.tar.gz

There are so many new things since version 0.7, that it is hard to know where to start. But we got the compiler that can compile itself (and I have been hard at work making it emit every possible error message on earth, so that it is not only a compiler, but a useful development tool), a JIT engine for Linux/x86 systems and an interpreter that works on Linux/PPC systems.

No other systems have been tested on this release, but we welcome contributions. Sergey’s StrongARM port has not been integrated, but Paolo’s patches to cross compile Mono are included. The compiler mcs can compile a quite a few applications on Linux, but nothing really major ones (it cant compile itself yet), if you want to help, again there are many bugs in our classes that need to be ironed out.

We have also built an IO layer into our runtime that emulates the IO model in Windows, because this model is exposed to the class library user, so it has to be done. One advantage is that you can “select/poll” for both file descriptors and mutexes. Sweet!

In this release, we of course include all the source code to the class libraries (and that juicy Regex engine is in there, the WebForms classes, System.Reflection and Reflection Emit, as well as piles of work on making all our object serializable and support all the exceptions in .NET).

There is still a long road to go, but I have been putting off this release since December 5th, so here it is. Hopefully I should be making releases more often, for those of you curious as to what we are doing.

Also, there are test suites for the compiler, the runtime and the class libraries. The class library tests fail all over the place: an indication that you can be part of this whole open source thing and help fix the bugs ;-). The compiler and runtime pass their tests though.

Now, the bad news is that you will need pkgconfig and glib 1.3 to compile and install Mono, you can get these from:

http://www.freedesktop.org/software/pkgconfig
ftp://ftp.gtk.org/pub/gtk/v1.3/glib-1.3.12.tar.gz

Once you compile and install those, you can compile mono on Linux. If you wish to recompile the class libraries or work on the compiler, you still need to use the .NET Framework on Windows.

I am considering seriously just copy/pasting the code from glib-1.3.12 that we use/require into mono to reduce the number of packages that must be compiled.

We are on the case to fix this. Promised.

Enjoy, Miguel