2004-04-14 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / INSTALL.txt
index 0f663e82cc7c555996adca1ed63c8f6f04ff6498..e59b6b06a4f836cc78701cddda6084e117522cde 100644 (file)
@@ -9,22 +9,34 @@ be supplemented by the class libraries, which are written in C#.  This
 package contains the components written in C#: class libraries,
 compilers and tools.
 
 package contains the components written in C#: class libraries,
 compilers and tools.
 
-Build Process for Users.
-========================
+*********************************************************************
+*                                                                   *
+*                            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
 
 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
-following command:
+make fullbuild command, like this:
 
 
-         ./autogen --prefix=/usr/local
+         cd ../mono
+         ./autogen.sh --prefix=/usr/local
          make fullbuild
 
 That will build and install the code in a single pass.  The
          make fullbuild
 
 That will build and install the code in a single pass.  The
-compilation is bundled with the build due to depedencies on the class
+compilation is bundled with the build due to dependencies on the class
 libraries on the runtime.
 
 libraries on the runtime.
 
-Build Features for Developers.
-==============================
+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
 
 These instructions apply to both Linux and Windows. To build this
 package, you must already have a C# compiler installed.  This means
@@ -34,6 +46,13 @@ 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).
 
 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
 To build the compiler and class libraries, run:
 
     make
@@ -45,16 +64,27 @@ To install them, run the following:
 
     make install
 
 
     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.
 
 If you get "corlib out of sync" errors, try
 
     make PROFILE="atomic"
 
 The difference between the two modes is explained farther down.
 
+Troubleshooting
+===============
+
+Occasionally, something in the compiler or runtime changes enough that
+an existing installation cannot complete a full build 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 fullbuild).
+
+       wget http://go-mono.com/daily/monolite-20031028.tar.gz
+       tar -zxvf monolite-20031028.tar.gz
+       cd monolite-20031028
+       cp *.exe /usr/local/bin/.
+       cp *.dll /usr/local/lib/.
+
 Monocharges
 ===========
 
 Monocharges
 ===========
 
@@ -97,7 +127,7 @@ rest of your build can proceed.
 
 If you want to always use the atomic profile, run this command:
 
 
 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
 ===========================
 
 More About the Build System
 ===========================