X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=README;h=d57aef26d8aa35567e313858ffbb0387adda2173;hb=22d723585050f005ff1aeb080dfa3b5e7c7db883;hp=9115a43498372bbca7ab879e8f117f623c57388c;hpb=27bd00a8a8fd4b2a55394dd9aa82832dfc09fc89;p=mono.git diff --git a/README b/README index 9115a434983..d57aef26d8a 100644 --- a/README +++ b/README @@ -11,16 +11,6 @@ This is Mono. a. Build Requirements --------------------- - To build Mono, you will need the following components: - - * pkg-config - - Available from: http://www.freedesktop.org/Software/pkgconfig - - * glib 2.4 - - Available from: http://www.gtk.org/ - On Itanium, you must obtain libunwind: http://www.hpl.hp.com/research/linux/libunwind/download.php4 @@ -35,7 +25,15 @@ This is Mono. * libgdiplus If you want to get support for System.Drawing, you will need to get - Libgdiplus. + Libgdiplus. This library in turn requires glib and pkg-config: + + * pkg-config + + Available from: http://www.freedesktop.org/Software/pkgconfig + + * glib 2.4 + + Available from: http://www.gtk.org/ * libzlib @@ -74,15 +72,18 @@ This is Mono. make V=1 - - c. Building the software from SVN + c. Building the software from GIT --------------------------------- - If you are building the software from SVN, make sure that you + If you are building the software from GIT, make sure that you have up-to-date mcs and mono sources: - svn co svn+ssh://USER@mono-cvs.ximian.com/source/trunk/mono - svn co svn+ssh://USER@mono-cvs.ximian.com/source/trunk/mcs + If you are an anonymous user: + git clone git://github.com/mono/mono.git + + If you are a Mono contributors with read/write privileges: + git clone git@github.com:mono/mono.git + Then, go into the mono directory, and configure: @@ -129,16 +130,16 @@ This is Mono. distribution, which contains just enough to run the 'mcs' compiler. You do this with: + # Run the following line after ./autogen.sh make get-monolite-latest This will download and automatically gunzip and untar the tarball, and place the files appropriately so that you can then just run: - make + make EXTERNAL_MCS=${PWD}/mcs/class/lib/monolite/gmcs.exe - To ensure that you're using the 'monolite' distribution, you can - also try passing EXTERNAL_MCS=false on the make command-line. + And that will use the files downloaded by 'make get-monolite-latest. Testing and Installation ------------------------ @@ -164,19 +165,31 @@ This is Mono. make install + You can verify your installation by using the mono-test-install + script, it can diagnose some common problems with Mono's install. + Failure to follow these steps may result in a broken installation. - d. Common Configuration Options - ------------------------------- + d. Configuration Options + ------------------------ The following are the configuration options that someone building Mono might want to use: + --with-sgen=yes,no + + Generational GC support: Used to enable or disable the + compilation of a Mono runtime with the SGen garbage collector. + + On platforms that support it, after building Mono, you + will have both a mono binary and a mono-sgen binary. + Mono uses Boehm, while mono-sgen uses the Simple + Generational GC. --with-gc=[boehm, included, sgen, none] - Selects the garbage collector engine to use, the - default is the "included" value. + Selects the default Boehm garbage collector engine to + use, the default is the "included" value. included: This is the default value, and its @@ -192,10 +205,6 @@ This is Mono. Boehm GC, but we do not recommend that people use this, as it disables a few features. - sgen: - The under-development Generational GC for - Mono, do not use this in production. - none: Disables the inclusion of a garbage collector. @@ -278,10 +287,10 @@ This is Mono. This defaults to `yes'. - --with-profile2=yes,no + --with-profile4=yes,no - Whether you want to build the 2.x libraries (support - for Generics and the 2.0/3.5 APIS). + Whether you want to build the 4.x profile libraries + and runtime. It defaults to `yes'. @@ -296,6 +305,21 @@ This is Mono. System.dll, System.Code.dll and System.Xml.Core.dll) and turn on the LINQ extensions for the compiler. + --with-moon-gc=boehm,sgen + + Select the GC to use for Moonlight. + + boehm: + Selects the Boehm Garbage Collector, with the same flags + as the regular Mono build. This is the default. + + sgen: + Selects the new SGen Garbage Collector, which provides + Generational GC support, using the same flags as the + mono-sgen build. + + This defaults to `boehm'. + --with-libgdiplus=installed,sibling, This is used to configure where should Mono look for @@ -408,6 +432,7 @@ This is Mono. optimizations. --enable-llvm + --enable-loadedllvm This enables the use of LLVM as a code generation engine for Mono. The LLVM code generator and optimizer will be @@ -418,7 +443,11 @@ This is Mono. full details and up-to-date information on this feature. You will need to have an LLVM built that Mono can link - against + against, + + The --enable-loadedllvm variant will make the llvm backend + into a runtime-loadable module instead of linking it directly + into the main mono binary. --enable-big-arrays @@ -463,6 +492,15 @@ This is Mono. There are a number of runtime options to control this also, see the man page. + --enable-nacl + + This configures the Mono compiler to generate code + suitable to be used by Google's Native Client: + + http://code.google.com/p/nativeclient/ + + Currently this is used with Mono's AOT engine as + Native Client does not support JIT engines yet. 2. Using Mono ============= @@ -547,3 +585,4 @@ This is Mono. directory is automatically configured to share the same prefix than this module gets. +