4f582814cca4756c7fd3b658373c8182984291e1
[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.16</b><br>
21               <a href="archive/mono-0.16">Release notes</a><br>
22               Oct 1st, 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.16.tar.gz">Mono Class Libraries and C# Compiler.</a>
33                       <li><a href="archive/mono-0.16.tar.gz">Mono Runtime</a>
34                       <li><a href="archive/gc6.1.tar.gz">Boehm GC 6.1</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.1-1.src.rpm">libgc-6.1-1.src.rpm</a>
45                         <li><a href="archive/mono-0.16-1.src.rpm">mono-0.16-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.1-1.i386.rpm">libgc-6.1-1.i386.rpm</a>
57                         <li><a href="archive/redhat-73-i386/libgc-devel-6.1-1.i386.rpm">libgc-devel-6.1-1.i386.rpm</a>
58                         <li><a href="archive/redhat-73-i386/mono-0.16-1.i386.rpm">mono-0.16-1.i386.rpm</a>
59                         <li><a href="archive/redhat-73-i386/mono-devel-0.16-1.i386.rpm">mono-devel-0.16-1.i386.rpm</a>
60                     </ul>
61                   </td>
62                   <td bgcolor="#999999">
63                     <b>Red Hat 7.2/x86</b>
64                     <ul>
65                         <li><a href="archive/redhat-72-i386/libgc-6.1-1.i386.rpm">libgc-6.1-1.i386.rpm</a>
66                         <li><a href="archive/redhat-72-i386/libgc-devel-6.1-1.i386.rpm">libgc-devel-6.1-1.i386.rpm</a>
67                         <li><a href="archive/redhat-72-i386/mono-0.16-1.i386.rpm">mono-0.16-1.i386.rpm</a>
68                         <li><a href="archive/redhat-72-i386/mono-devel-0.16-1.i386.rpm">mono-devel-0.16-1.i386.rpm</a>
69                     </ul>
70                   </td>
71                 </tr>
72                 <tr>
73                   <td bgcolor="#999999">
74                     <b>Red Hat 7.1/x86</b>
75                     <ul>
76                         <li><a href="archive/redhat-71-i386/libgc-6.1-1.i386.rpm">libgc-6.1-1.i386.rpm</a>
77                         <li><a href="archive/redhat-71-i386/libgc-devel-6.1-1.i386.rpm">libgc-devel-6.1-1.i386.rpm</a>
78                         <li><a href="archive/redhat-71-i386/mono-0.16-1.i386.rpm">mono-0.16-1.i386.rpm</a>
79                         <li><a href="archive/redhat-71-i386/mono-devel-0.16-1.i386.rpm">mono-devel-0.16-1.i386.rpm</a>
80                     </ul>
81                   </td>
82                   <td bgcolor="#999999">
83                     <b>Mandrake 8.2/x86</b>
84                     <ul>
85                         <li><a href="archive/mandrake-82-i386/libgc-6.1-1.i586.rpm">libgc-6.1-1.i586.rpm</a>
86                         <li><a href="archive/mandrake-82-i386/libgc-devel-6.1-1.i586.rpm">libgc-devel-6.1-1.i586.rpm</a>
87                         <li><a href="archive/mandrake-82-i386/mono-0.16-1.i586.rpm">mono-0.16-1.i586.rpm</a>
88                         <li><a href="archive/mandrake-82-i386/mono-devel-0.16-1.i586.rpm">mono-devel-0.16-1.i586.rpm</a>
89                     </ul>
90                   </td>
91                 </tr>
92                 <tr>
93                   <td bgcolor="#999999">
94                     <b>SuSE 8.0/x86</b>
95                     <ul>
96                         <li><a href="archive/suse-80-i386/libgc-6.1-1.i386.rpm">libgc-6.1-1.i386.rpm</a>
97                         <li><a href="archive/suse-80-i386/libgc-devel-6.1-1.i386.rpm">libgc-devel-6.1-1.i386.rpm</a>
98                         <li><a href="archive/suse-80-i386/mono-0.16-1.i386.rpm">mono-0.16-1.i386.rpm</a>
99                         <li><a href="archive/suse-80-i386/mono-devel-0.16-1.i386.rpm">mono-devel-0.16-1.i386.rpm</a>
100                     </ul>
101                   </td>
102                   <td bgcolor="#999999">
103                     <b>Red Hat 8.0/x86</b>
104                     <ul>
105                         <li><a href="archive/redhat-80-i386/libgc-6.1-1.i386.rpm">libgc-6.1-1.i386.rpm</a>
106                         <li><a href="archive/redhat-80-i386/libgc-devel-6.1-1.i386.rpm">libgc-devel-6.1-1.i386.rpm</a>
107                         <li><a href="archive/redhat-80-i386/mono-0.16-1.i386.rpm">mono-0.16-1.i386.rpm</a>
108                         <li><a href="archive/redhat-80-i386/mono-devel-0.16-1.i386.rpm">mono-devel-0.16-1.i386.rpm</a>
109                     </ul>
110                   </td>
111                 </tr>
112                 <tr>
113                   <td bgcolor="#999999">\r
114                     <b>Windows Setup Wizard (NT/2000/XP)</b>\r
115                     <ul>\r
116                       <li><a href="archive/mono-0.16-stable.exe">Mono-Setup</a>\r
117                     </ul>\r
118                   </td>\r
119                 </tr>
120               </table>
121             </td>
122           </tr>
123           <tr>
124             <tr bgcolor="#CCCCC">
125             <td>
126               <b>Regression Tests</b><br>
127             </td>
128             <td>
129                 You can get binaries for the Mono Regression Test
130                 Suite <a href="archive/mono-tests.tar.gz">here</a>
131             </td>
132           </tr>
133           </tr>
134           </tbody>
135         </table>
136 <br>
137 * Older Releases:
138
139         We provide binaries for older releases until we have packages for the new release.
140
141
142         <table>
143           <tbody>
144           <tr bgcolor="#DDDDDD">
145             <td>
146               <b>Release 0.15</b><br>
147               <a href="archive/mono-0.15">Release notes</a><br>
148               Aug 23rd, 2002.
149             </td>
150             <td>
151               <table cellspacing="1" cellpadding="3">
152                 <tr bgcolor="#BBBBBB">
153                   <td>
154                     <b>Source Code</b>
155                   </td>
156                   <td>
157                     <ul>
158                       <li><a href="archive/mcs-0.15.tar.gz">Mono Class Libraries and C# Compiler.</a>
159                       <li><a href="archive/mono-0.15.tar.gz">Mono Runtime</a>
160                       <li><a href="archive/gc6.1alpha5.tar.gz">Boehm GC 6.1alpha5</a>
161                     </ul>
162                   </td>
163                 </tr>
164                 <tr bgcolor="#BBBBBB">
165                   <td>
166                      <b>Source RPMs</b>
167                   </td>
168                   <td>
169                     <ul>
170                         <li><a href="archive/libgc-6.1alpha5-1.src.rpm">libgc-6.1alpha5-1.src.rpm</a>
171                         <li><a href="archive/mono-0.15-1.src.rpm">mono-0.15-1.src.rpm</a>
172                     </ul>
173                   </td>
174                 </tr>
175                 <tr>
176                  <td></td>
177                 </tr>
178                 \r
179                 <tr bgcolor="#999999">\r
180                   <td>\r
181                     <b>Windows (win95 friendly)</b>\r
182                     <ul>\r
183                       <li><a href="archive/mono-w32-Aug_28_2002.zip">Mono-w32</a>\r
184                     </ul>\r
185                   </td>\r
186                   <td bgcolor="#999999">\r
187                     <b>Red Hat null-8.0/x86</b>\r
188                     <ul>\r
189                         <li><a href="archive/redhat-null-i386/libgc-6.1alpha5-1.i386.rpm">libgc-6.1alpha5-1.i386.rpm</a>\r
190                         <li><a href="archive/redhat-null-i386/libgc-devel-6.1alpha5-1.i386.rpm">libgc-devel-6.1alpha5-1.i386.rpm</a>\r
191                         <li><a href="archive/redhat-null-i386/mono-0.15-1.i386.rpm">mono-0.15-1.i386.rpm</a>\r
192                         <li><a href="archive/redhat-null-i386/mono-devel-0.15-1.i386.rpm">mono-devel-0.15-1.i386.rpm</a>\r
193                     </ul>\r
194                   </td>\r
195                 </tr>\r
196               </table>
197             </td>
198           </tr>
199           </tbody>
200         </table>
201
202 ** Binaries for other platforms.
203
204         Already daily volunteer's made binaries:
205
206         <ul>
207                 * <a href="http://www.debianplanet.org/mono/">DebianPlanet</a>
208                 * <a href="http://www.superin.formativ.net/mono/mono.htm">Windows</a> (works without cygwin!)
209         </ul>
210
211 * Snapshots
212
213 <a name="snapshots">
214
215         <a href="http://www.go-mono.com/snapshots">Nightly snapshots</a> of 
216         the CVS repository are made every day at 10pm EST (Boston
217         Time).  These are not guaranteed to build, they are just a
218         snapshot of the tree.
219
220         The <a href="anoncvs.html">anoncvs</a> mirrors provided by
221         Hispalinux are updated every six hours.
222
223 * Compiling with scripts
224
225         There are scripts to help build mono for both Unix and Windows.  Get
226         <a href="mono-build.sh">mono-build.sh</a> for Unix, or <a
227         href="mono-build-w32.sh">mono-build-w32.sh</a> for Windows.
228         These scripts automate the installation of GLIB and pkgconfig
229         (building from source on Unix, and using binary packages
230         provided by the GIMP for Windows project on Windows.)  To use
231         the script, follow these simple steps:
232
233         <ul>
234                 * Save the script for your platform somewhere (e.g. /usr/local/bin)
235                 * Make the script executable (i.e chmod 755 /usr/local/bin/mono-build.sh)
236                 * Create a directory to hold the mono source, and the compiled binaries (e.g. mkdir ~/mono)
237                 * Change to the new directory (i.e. cd ~/mono)
238                 * run the script (i.e. /usr/local/bin/mono-build.sh)
239         </ul>
240
241         The script requires wget on either platform, and building the
242         software requires make, gcc, automake, autoconf, and libtool.
243         You should install these packages from your distribution or
244         with the cygwin installer. You should also take care of setting
245         the right environment variables as the PKG_CONFIG_FLAGS, etc.
246
247         The script will download required packages from
248         www.go-mono.com and do a cvs checkout of mono in the current
249         directory.  <b>IMPORTANT!:</b> The cvs server chosen defaults to 
250         anonymous cvs;
251         set your CVSROOT environment variable before running the script to
252         select a particular cvs server.
253
254 <a name="install">
255 ** Building the software manually
256
257         You will need to obtain the Mono dependencies first: <a
258         href="http://www.gtk.org">glib 2.x</a> and 
259         <a href="http://www.freedesktop.org/software/pkgconfig">pkg-config</a>.
260
261 *** Building on Linux
262
263         <ul>
264                 Unpack the Mono runtime distribution:
265                 <pre>
266                 tar xzvf mono-X.XX.tar.gz
267                 cd mono-X.XX
268                 
269                 </pre>
270                 <p>
271
272                 Then configure, compile and install:
273
274                 <pre>
275                 
276                 ./configure --prefix=/usr/local
277                 make
278                 make install</pre>
279
280                 This will give you a runtime, C# compiler and runtime
281                 libraries.  
282
283                 If you want to recompile the runtime and the compiler,
284                 follow these steps, first unpack the MCS package:
285
286                 <pre>
287                 tar xzvf mcs-X.XX.tar.gz
288                 
289                 cd mcs-X.XX
290                 </pre>
291
292                 Then use the following command to compile and install:
293
294                 <pre>
295                 
296                 make -f makefile.gnu install prefix=/usr/local
297                 </pre>
298
299                 You can change /usr/local to something else if you want.
300         </ul>
301         
302 *** On Windows, to install and work on the compiler and the class libraries:
303
304 **** Install Cygwin and the GNU build tools, Microsoft's .NET Framework SDK and the precompiled GLIB 2.0 and pkg-config libraries.
305
306         <ul>
307
308                 * Install <a href="http://www.cygwin.com">Cygwin</a>.
309
310                 * Install <a href="http://msdn.microsoft.com/downloads">
311                   Microsoft .NET Framework SDK</a>.
312
313                 * Change to the /usr/local directory
314                   of your Cygwin installation.<br>
315                   Unzip the precompiled packages listed above.
316
317         </ul>
318         <ul>
319                 
320                 * If you downloaded the Mono 
321                 <a href="http://www.go-mono.com/snapshots">nightly snapshot
322                 </a>, untar the snapshot.
323
324                 * Change directories to "mcs".
325
326                 * Compile:
327                 
328                 <pre>
329                 make
330                 </pre>
331         </ul>
332
333 *** On Windows, to compile the mono runtime:
334
335         <ul>
336                 
337                 * If you downloaded the Mono 
338                   <a href="http://www.go-mono.com/snapshots">nightly snapshot
339                   </a>, untar the snapshot.
340
341                 * Change directories to "mono".
342
343                 * Configure, compile and install:
344                 <pre>
345                 ./configure --prefix=c:/mono
346                 make
347                 make install
348                 </pre>
349
350         </ul>
351
352 * Software resources and notes
353
354                 The required and additional software can be downloaded here:
355
356                 * Microsoft's .NET Framework SDK from 
357                   <a href="http://msdn.microsoft.com/downloads">
358                   msdn.microsoft.com/downloads</a>.
359
360                 * Cygwin and the GNU Make tools from  
361                   <a href="http://www.cygwin.com">www.cygwin.com</a>.
362                   Some people observed problems with autoconf 2.52. Installing 
363                   autoconf 2.13 helped in those cases.
364
365                 * Precompiled GLIB 2.0 and pkg-config packages (and
366                   their dependencies) by the <a href="http://www.gimp.org/~tml/gimp/win32//index.html">GIMP for Windows</a> project from
367                   <a href="http://www.go-mono.com/archive/pkgconfig-0.11-20020310.zip">http://www.go-mono.com/archive/pkgconfig-0.11-20020310.zip</a><br>
368                   <a href="http://www.go-mono.com/archive/glib-2.0.4-20020703.zip">http://www.go-mono.com/archive/glib-2.0.4-20020703.zip</a> <br>
369                   <a href="http://www.go-mono.com/archive/glib-dev-2.0.4-20020703.zip">http://www.go-mono.com/archive/glib-dev-2.0.4-20020703.zip</a> <br>
370                   <a href="http://www.go-mono.com/archive/libiconv-1.7.zip">http://www.go-mono.com/archive/libiconv-1.7.zip</a> <br>
371                   <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>
372                   <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>
373
374
375                 * Download the Mono source code from the
376                   <a href="#feb-11">packaged versions</a> or
377                   the <a href="http://www.go-mono.com/snapshots">
378                   nightly snapshots</a> or the <a href="anoncvs.html">
379                   Anonymous CVS</a>.  The nightly snapshots are done every 
380                   night at 10pm EST (Boston Time). The nightly snapshots are 
381                   not guaranteed to build, but most of the time they should.
382
383
384         </ul>
385
386
387 *** Notes on compiling GLIB 2.0 and pkg-config from source:
388
389
390         <ul>
391
392                 * Some people observed problems with autoconf 2.52. Installing 
393                   autoconf 2.13 helped in those cases (don't forget to do a
394                   `make maintainer-clean' after the update).
395
396                 * Download, compile and install <a href="http://www.freedesktop.org/software/pkgconfig">pkg-config</a> from source.
397                   (I had to change line 674 of
398                   <nobr><tt>pkg-config-0.8.0/glib-1.2.8/gstrfuncs.c</tt></nobr> from 
399                   <nobr><tt>extern char *strsignal (int sig);</tt></nobr> to
400                   <nobr><tt>extern const char *strsignal (int sig);</tt></nobr>.
401
402 <pre>
403 tar xzvf pkg-config-0.8.0.tar.gz
404 cd pkg-config-0.8.0
405 ./configure --prefix=/usr
406 make
407 make install
408 </pre>
409
410                 * Download, compile and install <a href="ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.7.tar.gz">libiconv</a> from source.<br>
411                   If you dont have MS Visual C/C++ 4.0 or 5.0 or 6.0 you can also try
412                   the binary package available at <a
413                   href="http://www.gimp.org/win32/libiconv-dev-20001007.zip">
414                   http://www.gimp.org/win32/libiconv-dev-20001007.zip</a>.
415
416  
417                 * Download, compile and install the 
418                   <a href="ftp://ftp.gtk.org/pub/gtk/v2.0/glib-2.0.6.tar.gz">
419                   glib 2.0</a> from source.
420
421         </ul>
422