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