X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mcs%2FINSTALL.txt;h=2b59d588ba3b029982d950d69de74cd90d231faa;hb=02ca166355098363e452c9a2cf48ac9e0f942ec0;hp=7013d30ea064a7f5c1473d6ac9e18933ea32210d;hpb=accc28dd648ec7b8a8ece85564efd9614059710f;p=mono.git diff --git a/mcs/INSTALL.txt b/mcs/INSTALL.txt index 7013d30ea06..2b59d588ba3 100644 --- a/mcs/INSTALL.txt +++ b/mcs/INSTALL.txt @@ -1,26 +1,58 @@ 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. +The Mono project has developed mono, a CLI runtime. The build process +of each of these depends on nothing more than a C compiler and glib2. 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. - -Building MCS -============ +be supplemented by the class libraries, which are written in C#. This +package contains the components written in C#: class libraries, +compilers and tools. + +********************************************************************* +* * +* NOTICE * +* * +* Unless you are developing the class libraries, you should * +* not need to do any build steps in this directory. * +* * +* Go to ../mono and read the README file to compile and * +* install. * +* * +* ../mono is where you have your `mono' source download * +* * +********************************************************************* + +If you only want to build a snapshot or a fresh CVS checkout of the +sources, you should go into the `mono' sibling directory and issue the +make command, like this: + + cd ../mono + ./autogen.sh --prefix=/usr/local + make + make install + +The compilation is bundled with the build due to dependencies on the +class libraries on the runtime. + +Build Features for Developers of Mono. +====================================== These instructions apply to both Linux and Windows. To build this package, you must already have a C# compiler installed. This means that to build on Linux, you need to get a distribution of the MCS -binaries; these are called monocharges. See README.building for -information on where to get them. On Windows, you can just use the +binaries; these are called monocharges. They can be found at +www.go-mono.com/daily. On Windows, you can just use the Microsoft compiler. You also need GNU make to build the software (on Windows, you will need for example the Cygwin environment setup). +You can customize your MCS configuration by using: + + ./configure [--prefix=PREFIX] [--profile=PROFILE] + +If you do not run the above, the defaults are /usr/local for the +prefix, and `default' for the profile. + To build the compiler and class libraries, run: make @@ -32,15 +64,29 @@ To install them, run the following: make install -The default prefix is /usr/local. To change this configuration option type: - - echo prefix=/your-prefix >> build/config.make - If you get "corlib out of sync" errors, try make PROFILE="atomic" -The difference between the two modes is explained farther down. +A better alternative would be to fire off a 'make' from a sibling or +parent 'mono/' tree. + +Troubleshooting +=============== + +We try to maintain the CVS tree such that it is bootstrapable from the +latest released version of mono and mcs. Occasionally, something in the +compiler or runtime changes enough that an existing installation cannot +complete a bootstrap from cvs. In this case, go to +http://go-mono.com/daily and download a monocharge or monolite tarball. +Unpack and copy the .dlls to $prefix/lib and .exes to $prefix/bin/. +Then you should be able to complete the build normally (i.e. using make +bootstrap). + + wget http://go-mono.com/daily/monolite-20040505.tar.gz + tar -zxvf monolite-20040505.tar.gz + cd monolite-20040505 + env prefix=/usr/local sh recharge.sh Monocharges =========== @@ -84,7 +130,7 @@ rest of your build can proceed. If you want to always use the atomic profile, run this command: - echo PROFILE=atomic >> build/config.make + ./configure --profile=atomic More About the Build System ===========================