Flush docs
[mono.git] / doc / download
1 * Software Availability
2
3         The Virtual Execution System is available in package `mono'.
4         Currently this contains a metadata library and the
5         disassembler.  Please refer to our <a
6         href="runtime.html">Runtime</a> description for more details
7         on this part of the project.
8
9         Some useful links: <a
10         href="http://www.go-mono.org/mono-beginning.html">Resources/Beginning
11         section</a>, the <a
12         href="http://www.go-mono.org/faq.html">FAQ</a> and the <a
13         href="http://geneura.ugr.es/~jaime/deploy/mono-common-problems.html">
14         Mono Common Problems</a>. 
15
16         <table>
17           <tbody>
18           <tr bgcolor="#DDDDDD">
19             <td>
20               <b>Release 0.15</b><br>
21               <a href="archive/mono-0.15">Release notes</a><br>
22               Aug 23rd, 2002.
23             </td>
24             <td>
25               <table cellspacing="1" cellpadding="3">
26                 <tr bgcolor="#BBBBBB">
27                   <td>
28                     <b>Source Code</b>
29                   </td>
30                   <td>
31                     <ul>
32                       <li><a href="archive/mcs-0.15.tar.gz">Mono Class Libraries and C# Compiler.</a>
33                       <li><a href="archive/mono-0.15.tar.gz">Mono Runtime</a>
34                       <li><a href="archive/gc6.1alpha5.tar.gz">Boehm GC 6.1alpha5</a>
35                     </ul>
36                   </td>
37                 </tr>
38                 <tr bgcolor="#BBBBBB">
39                   <td>
40                      <b>Source RPMs</b>
41                   </td>
42                   <td>
43                     <ul>
44                         <li><a href="archive/libgc-6.1alpha5-1.src.rpm">libgc-6.1alpha5-1.src.rpm</a>
45                         <li><a href="archive/mono-0.15-1.src.rpm">mono-0.15-1.src.rpm</a>
46                     </ul>
47                   </td>
48                 </tr>
49                 <tr>
50                  <td></td>
51                 </tr>
52                 <tr>
53                   <td bgcolor="#999999">
54                     <b>Red Hat 7.3/x86</b>
55                     <ul>
56                         <li><a href="archive/redhat-73-i386/libgc-6.1alpha5-1.i386.rpm">libgc-6.1alpha5-1.i386.rpm</a>
57                         <li><a href="archive/redhat-73-i386/libgc-devel-6.1alpha5-1.i386.rpm">libgc-devel-6.1alpha5-1.i386.rpm</a>
58                         <li><a href="archive/redhat-73-i386/mono-0.15-1.i386.rpm">mono-0.15-1.i386.rpm</a>
59                         <li><a href="archive/redhat-73-i386/mono-devel-0.15-1.i386.rpm">mono-devel-0.15-1.i386.rpm</a>
60                     </ul>
61                   </td>
62                   <td bgcolor="#999999">
63                     <b>Red Hat 7.1/x86</b>
64                     <ul>
65                         <li><a href="archive/redhat-71-i386/libgc-6.1alpha5-1.i386.rpm">libgc-6.1alpha5-1.i386.rpm</a>
66                         <li><a href="archive/redhat-71-i386/libgc-devel-6.1alpha5-1.i386.rpm">libgc-devel-6.1alpha5-1.i386.rpm</a>
67                         <li><a href="archive/redhat-71-i386/mono-0.15-1.i386.rpm">mono-0.15-1.i386.rpm</a>
68                         <li><a href="archive/redhat-71-i386/mono-devel-0.15-1.i386.rpm">mono-devel-0.15-1.i386.rpm</a>
69                     </ul>
70                   </td>
71                 </tr>
72                 <tr>
73                   <td bgcolor="#999999">
74                     <b>Mandrake 8.2/x86</b>
75                     <ul>
76                         <li><a href="archive/mandrake-82-i386/libgc-6.1alpha5-1.i386.rpm">libgc-6.1alpha5-1.i586.rpm</a>
77                         <li><a href="archive/mandrake-82-i386/libgc-devel-6.1alpha5-1.i386.rpm">libgc-devel-6.1alpha5-1.i586.rpm</a>
78                         <li><a href="archive/mandrake-82-i386/mono-0.15-1.i386.rpm">mono-0.15-1.i586.rpm</a>
79                         <li><a href="archive/mandrake-82-i386/mono-devel-0.15-1.i386.rpm">mono-devel-0.15-1.i586.rpm</a>
80                     </ul>
81                   </td>
82                   <td bgcolor="#999999">
83                     <b>SuSE 8.0/x86</b>
84                     <ul>
85                         <li><a href="archive/suse-80-i386/libgc-6.1alpha5-1.i386.rpm">libgc-6.1alpha5-1.i386.rpm</a>
86                         <li><a href="archive/suse-80-i386/libgc-devel-6.1alpha5-1.i386.rpm">libgc-devel-6.1alpha5-1.i386.rpm</a>
87                         <li><a href="archive/suse-80-i386/mono-0.15-1.i386.rpm">mono-0.15-1.i386.rpm</a>
88                         <li><a href="archive/suse-80-i386/mono-devel-0.15-1.i386.rpm">mono-devel-0.15-1.i386.rpm</a>
89                     </ul>
90                   </td>
91                 </tr>
92                 <tr bgcolor="#999999">
93                   <td>
94                     <b>Windows (win95 friendly)</b>
95                     <ul>
96                       <li><a href="archive/mono-w32-Aug_28_2002.zip">Mono-w32</a>
97                     </ul>
98                   </td>
99                   <td bgcolor="#999999">
100                     <b>Red Hat null-8.0/x86</b>
101                     <ul>
102                         <li><a href="archive/redhat-null-i386/libgc-6.1alpha5-1.i386.rpm">libgc-6.1alpha5-1.i386.rpm</a>
103                         <li><a href="archive/redhat-null-i386/libgc-devel-6.1alpha5-1.i386.rpm">libgc-devel-6.1alpha5-1.i386.rpm</a>
104                         <li><a href="archive/redhat-null-i386/mono-0.15-1.i386.rpm">mono-0.15-1.i386.rpm</a>
105                         <li><a href="archive/redhat-null-i386/mono-devel-0.15-1.i386.rpm">mono-devel-0.15-1.i386.rpm</a>
106                     </ul>
107                   </td>
108                 </tr>
109               </table>
110             </td>
111           </tr>
112           <tr>
113             <tr bgcolor="#CCCCC">
114             <td>
115               <b>Regression Tests</b><br>
116             </td>
117             <td>
118                 You can get binaries for the Mono Regression Test
119                 Suite <a href="archive/mono-tests.tar.gz">here</a>
120             </td>
121           </tr>
122           </tbody>
123         </table>
124
125 ** Binaries for other platforms.
126
127         Already daily volunteer's made binaries:
128
129         <ul>
130                 * <a href="http://www.debianplanet.org/mono/">DebianPlanet</a>
131                 * <a href="http://www.superin.formativ.net/mono/mono.htm">Windows</a> (works without cygwin!)
132         </ul>
133
134 * Snapshots
135
136 <a name="snapshots">
137
138         <a href="http://www.go-mono.com/snapshots">Nightly snapshots</a> of 
139         the CVS repository are made every day at 10pm EST (Boston
140         Time).  These are not guaranteed to build, they are just a
141         snapshot of the tree.
142
143         The <a href="anoncvs.html">anoncvs</a> mirrors provided by
144         Hispalinux are updated every six hours.
145
146 * Compiling with scripts
147
148         There are scripts to help build mono for both Unix and Windows.  Get
149         <a href="mono-build.sh">mono-build.sh</a> for Unix, or <a
150         href="mono-build-w32.sh">mono-build-w32.sh</a> for Windows.
151         These scripts automate the installation of GLIB and pkgconfig
152         (building from source on Unix, and using binary packages
153         provided by the GIMP for Windows project on Windows.)  To use
154         the script, follow these simple steps:
155
156         <ul>
157                 * Save the script for your platform somewhere (e.g. /usr/local/bin)
158                 * Make the script executable (i.e chmod 755 /usr/local/bin/mono-build.sh)
159                 * Create a directory to hold the mono source, and the compiled binaries (e.g. mkdir ~/mono)
160                 * Change to the new directory (i.e. cd ~/mono)
161                 * run the script (i.e. /usr/local/bin/mono-build.sh)
162         </ul>
163
164         The script requires wget on either platform, and building the
165         software requires make, gcc, automake, autoconf, and libtool.
166         You should install these packages from your distribution or
167         with the cygwin installer. You should also take care of setting
168         the right environment variables as the PKG_CONFIG_FLAGS, etc.
169
170         The script will download required packages from
171         www.go-mono.com and do a cvs checkout of mono in the current
172         directory.  <b>IMPORTANT!:</b> The cvs server chosen defaults to 
173         anonymous cvs;
174         set your CVSROOT environment variable before running the script to
175         select a particular cvs server.
176
177 <a name="install">
178 ** Building the software manually
179
180         You will need to obtain the Mono dependencies first: <a
181         href="http://www.gtk.org">glib 2.x</a> and 
182         <a href="http://www.freedesktop.org/software/pkgconfig">pkg-config</a>.
183
184 *** Building on Linux
185
186         <ul>
187                 Unpack the Mono runtime distribution:
188                 <pre>
189                 tar xzvf mono-X.XX.tar.gz
190                 cd mono-X.XX
191                 
192                 </pre>
193                 <p>
194
195                 Then configure, compile and install:
196
197                 <pre>
198                 
199                 ./configure --prefix=/usr/local
200                 make
201                 make install</pre>
202
203                 This will give you a runtime, C# compiler and runtime
204                 libraries.  
205
206                 If you want to recompile the runtime and the compiler,
207                 follow these steps, first unpack the MCS package:
208
209                 <pre>
210                 tar xzvf mcs-X.XX.tar.gz
211                 
212                 cd mcs-X.XX
213                 </pre>
214
215                 Then use the following command to compile and install:
216
217                 <pre>
218                 
219                 make -f makefile.gnu install prefix=/usr/local
220                 </pre>
221
222                 You can change /usr/local to something else if you want.
223         </ul>
224         
225 *** On Windows, to install and work on the compiler and the class libraries:
226
227 **** Install Cygwin and the GNU build tools, Microsoft's .NET Framework SDK and the precompiled GLIB 2.0 and pkg-config libraries.
228
229         <ul>
230
231                 * Install <a href="http://www.cygwin.com">Cygwin</a>.
232
233                 * Install <a href="http://msdn.microsoft.com/downloads">
234                   Microsoft .NET Framework SDK</a>.
235
236                 * Change to the /usr/local directory
237                   of your Cygwin installation.<br>
238                   Unzip the precompiled packages listed above.
239
240         </ul>
241         <ul>
242                 
243                 * If you downloaded the Mono 
244                 <a href="http://www.go-mono.com/snapshots">nightly snapshot
245                 </a>, untar the snapshot.
246
247                 * Change directories to "mcs".
248
249                 * Compile:
250                 
251                 <pre>
252                 make
253                 </pre>
254         </ul>
255
256 *** On Windows, to compile the mono runtime:
257
258         <ul>
259                 
260                 * If you downloaded the Mono 
261                   <a href="http://www.go-mono.com/snapshots">nightly snapshot
262                   </a>, untar the snapshot.
263
264                 * Change directories to "mono".
265
266                 * Configure, compile and install:
267                 <pre>
268                 ./configure --prefix=c:/mono
269                 make
270                 make install
271                 </pre>
272
273         </ul>
274
275 * Software resources and notes
276
277                 The required and additional software can be downloaded here:
278
279                 * Microsoft's .NET Framework SDK from 
280                   <a href="http://msdn.microsoft.com/downloads">
281                   msdn.microsoft.com/downloads</a>.
282
283                 * Cygwin and the GNU Make tools from  
284                   <a href="http://www.cygwin.com">www.cygwin.com</a>.
285                   Some people observed problems with autoconf 2.52. Installing 
286                   autoconf 2.13 helped in those cases.
287
288                 * Precompiled GLIB 2.0 and pkg-config packages (and
289                   their dependencies) by the <a href="http://www.gimp.org/~tml/gimp/win32//index.html">GIMP for Windows</a> project from
290                   <a href="http://www.go-mono.com/archive/pkgconfig-0.80-tml-20020101.zip">http://www.go-mono.com/archive/pkgconfig-0.80-tml-20020101.zip</a><br>
291                   <a href="http://www.go-mono.com/archive/glib-1.3.12-20020101.zip">http://www.go-mono.com/archive/glib-1.3.12-20020101.zip</a> <br>
292                   <a href="http://www.go-mono.com/archive/glib-dev-1.3.12-20020101.zip">http://www.go-mono.com/archive/glib-dev-1.3.12-20020101.zip</a> <br>
293                   <a href="http://www.go-mono.com/archive/libiconv-1.7.zip">http://www.go-mono.com/archive/libiconv-1.7.zip</a> <br>
294                   <a href="http://www.go-mono.com/archive/libiconv-dev-1.7.zip">http://www.go-mono.com/archive/libiconv-dev-1.7-20020101.zip</a> <br>
295                   <a href="http://www.go-mono.com/archive/libintl-0.10.40-20020101.zip">http://www.go-mono.com/archive/libintl-0.10.40-20020101.zip</a><br>
296
297
298                 * Download the Mono source code from the
299                   <a href="#feb-11">packaged versions</a> or
300                   the <a href="http://www.go-mono.com/snapshots">
301                   nightly snapshots</a> or the <a href="anoncvs.html">
302                   Anonymous CVS</a>.  The nightly snapshots are done every 
303                   night at 10pm EST (Boston Time). The nightly snapshots are 
304                   not guaranteed to build, but most of the time they should.
305
306
307         </ul>
308
309
310 *** Notes on compiling GLIB 2.0 and pkg-config from source:
311
312
313         <ul>
314
315                 * Some people observed problems with autoconf 2.52. Installing 
316                   autoconf 2.13 helped in those cases (don't forget to do a
317                   `make maintainer-clean' after the update).
318
319                 * Download, compile and install <a href="http://www.freedesktop.org/software/pkgconfig">pkg-config</a> from source.
320                   (I had to change line 674 of
321                   <nobr><tt>pkg-config-0.8.0/glib-1.2.8/gstrfuncs.c</tt></nobr> from 
322                   <nobr><tt>extern char *strsignal (int sig);</tt></nobr> to
323                   <nobr><tt>extern const char *strsignal (int sig);</tt></nobr>.
324
325 <pre>
326 tar xzvf pkg-config-0.8.0.tar.gz
327 cd pkg-config-0.8.0
328 ./configure --prefix=/usr
329 make
330 make install
331 </pre>
332
333                 * Download, compile and install <a href="ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.7.tar.gz">libiconv</a> from source.<br>
334                   If you dont have MS Visual C/C++ 4.0 or 5.0 or 6.0 you can also try
335                   the binary package available at <a
336                   href="http://www.gimp.org/win32/libiconv-dev-20001007.zip">
337                   http://www.gimp.org/win32/libiconv-dev-20001007.zip</a>.
338
339  
340                 * Download, compile and install the 
341                   <a href="ftp://ftp.gtk.org/pub/gtk/v2.0/glib-2.0.6.tar.gz">
342                   glib 2.0</a> from source.
343
344         </ul>
345