Basic Installation
==================

The Mono project has developed mono, an x86-specific CL JIT compiler and
mint, a portable CLI interpreter. The build process of each of these
depends on nothing more than a C compiler, glib2 and libgc.

However, to provide a working runtime environment, these programs must
be supplemented by corlib, a CLR assembly to which they are closely
tied. This package provides the C# sources for corlib as well as some
additional assemblies and mcs, the Mono C# compiler.

To build this package, you must already have a C# compiler installed.
Build instructions for *NIX and Microsoft Windows follow.

Building mcs on *NIX
====================

mcs provides a set of makefiles which make it easy to build and install
mcs on *NIX systems like Linux or FreeBSD where mcs is already
installed.

To build the compiler and class libraries, run:

    make -f makefile.gnu

The libraries will be placed in the directory class/lib/ and the mcs
compiler executable in mcs/.

To install them, run the following, where prefix identifies where you
want the files installed:

    make -f makefile.gnu install prefix=/usr/local

If you are tracking Mono's development, you may sometimes need to share
the compiled libraries with others. If you want to produce an easily
distributable tarball, run:

    make -f makefile.gnu dist

Building mcs on Windows
=======================

It is also possible to build mcs on Windows using the Microsoft .NET
framework. This may be convenient if you do not have access to a working
mcs setup. To build the compiler and class libraries, run:

    make

The libraries will be placed in the directory class/lib/ and the mcs
compiler executable in mcs/. They can then be copied to /usr/lib and
/usr/bin or wherever desired on the target system.

