[Mono-list] Building notes for Mono 0.10.
Miguel de Icaza
miguel@ximian.com
28 Mar 2002 18:00:15 -0500
--=-pT9E3W3+yoF5tJ/BgnAb
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Hello everyone,
Tim has been nice enough to provide his notes on building Mono on
Windows and Linux. Here they are for your building pleasure.
Miguel
--=-pT9E3W3+yoF5tJ/BgnAb
Content-Disposition: inline
Content-Description: Forwarded message - Mono 0.10 build feedback
Content-Type: message/rfc822
Return-Path: <Timothy_Dyck@ziffdavis.com>
Delivered-To: miguel@peabody.ximian.com
Received: (qmail 22488 invoked from network); 27 Mar 2002 13:09:47 -0000
Received: from trna.ximian.com (141.154.95.22) by peabody.ximian.com with
SMTP; 27 Mar 2002 13:09:47 -0000
Received: from edmsg006.ziffdavis.com ([65.160.97.5]) by trna.ximian.com
(8.11.6/8.11.6) with ESMTP id g2RDAC016138 for <miguel@ximian.com>; Wed, 27
Mar 2002 08:10:12 -0500
Content-Class: urn:content-classes:message
MIME-Version: 1.0
X-Security: MIME headers sanitized on peabody See
http://www.impsec.org/email-tools/sanitizer-intro.html for details.
$Revision: 1.132 $Date: 2001-12-05 20:20:17-08
Content-Type: multipart/mixed; boundary="----_=_NextPart_001_01C1D590.A86F79F8"
X-MimeOLE: Produced By Microsoft Exchange V6.0.5762.3
Subject: Mono 0.10 build feedback
Date: Wed, 27 Mar 2002 08:09:42 -0500
Message-ID: <F21F290C52712F41B8F5EAA14724B4C920337F@EDMSG006.media.ziffdavis.com>
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
Thread-Topic: Mono 0.10 build feedback
thread-index: AcHVkKbGIkMNM5guQIyTNCl2yJul/A==
From: "Dyck, Timothy" <Timothy_Dyck@ziffdavis.com>
To: "Miguel de Icaza" <miguel@ximian.com>
This is a multi-part message in MIME format.
------_=_NextPart_001_01C1D590.A86F79F8
Content-Type: multipart/alternative; boundary="----_=_NextPart_002_01C1D590.A86F79F8"
------_=_NextPart_002_01C1D590.A86F79F8
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hi Miguel, congratulations on the 0.10 release. I downloaded tar files a fe=
w hours ago and have been trying them out. I had a few build problems (most=
ly on Windows) that are marked below.
Since I was taking notes, I also ended up writing out the steps to manually=
build Mono 0.10 and mcs 0.10, which you can use to update the build page i=
f you think they are OK.
Regards,
Tim Dyck
eWEEK
<<Mono 0.10 compilation notes and instructions.txt>>=20
Mono 0.10 manual compilation instructions
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
FOR LINUX
1. You need to download and install the following:
- pkgconfig 0.8.0 or later (http://www.freedesktop.org/software/pkgconfig)
- glib 1.3.11 or later, including glib 2.0.0 (http://www.gtk.org/download/=
)
If you are installing using pre-compiled packages, you need both glib2 and=
glib2-devel.
2. Untar mono-0.10.tar.gz:
tar xvfz mono-0.10.tar.gz
3. Build Mono:
cd mono-0.10
./configure
make
make install
By default, Mono binaries are placed in /usr/local/bin.
4. You can now compile C# programs using mcs and run the generated programs=
using mono or mint.
e.g.
# cat HelloWorld.cs
using System;=20
class HelloWorld {
public static void Main(String[] args) {
Console.WriteLine("Hello from Mono!\n");
}
}
# mcs HelloWorld.cs
RESULT: 0
# mono HelloWorld.exe
Hello from Mono!
RESULT: 0
=09
NOTE: mono configure process has one error (wrapper directory still referen=
ced in configure and configure.in):
creating mono/tests/Makefile
creating mono/wrapper/Makefile
sed: can't read ./mono/wrapper/Makefile.in: No such file or directory
creating mono/monoburg/Makefile
creating mono/monograph/Makefile
NOTE: mcs script hard-coded to point to /usr/local/bin to find binaries eve=
n if configure --prefix=3D... is used.
=3D=3D=3D
FOR WINDOWS USING CYGWIN
1. You need to download and install the following:
- pkgconfig 0.80
- glib 1.3.12
- glib-dev 1.3.12
- libiconv 1.7
- libiconv-dev 1.7
- libintl 0.10.40
Precompiled zip files containing Cygwin versions of all these can be downlo=
aded from http://www.go-mono.com/download.html.
2. Unzip each zip file into /usr/local:
for zipfile in *.zip; do unzip -o $zipfile -d /usr/local; done
3. Add /usr/local/lib to the path so Mono's configure script and Mono binar=
ies can find the libraries located there:
export PATH=3D$PATH:/usr/local/lib
4. Untar mono-0.10.tar.gz:
tar xvfz mono-0.10.tar.gz
5. Build Mono:
cd mono-0.10
./configure
make
make install
NOTE: Make error in mono/metadata building socket-io.c: netdb.h not found e=
ven though it is in /usr/include.
- edit socket-io.c line 11 to use winsock.h instead
- edit Makefile to add -IC:/cygwin/usr/local/include to GLIB_CFLAGS line t=
o fix problem buiding mono/metadata/unicode.c -- can't find iconv.h
NOTE: mono executable in mono/jit not generated: make error in codegen.h du=
e to missing sys/syscall.h file on line 17. Also errors about missing pthre=
ad.h from mono/io-layer/critical-sections.h lines 7 and 9.
Also, same wrapper directory ./configure error.
mcs 0.10 manual compilation instructions
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Starting with Mono 0.10, the Mono archives already include pre-compiled ver=
sions of mcs and the Mono classes. You only need to download the mcs archiv=
e and build it if you want to change mcs itself or if you are developing Mo=
no classes, or if you are following mcs or class assembly development on CV=
S.
FOR LINUX
1. You need to download and install the following:
- pkgconfig 0.8.0 or later (http://www.freedesktop.org/software/pkgconfig)
- glib 1.3.11 or later, including glib 2.0.0 (http://www.gtk.org/download/=
)
If you are installing using pre-compiled packages, you need both glib2 and=
glib2-devel.
2. Untar mcs-0.10.tar.gz:
tar xvfz mcs-0.10.tar.gz
3. Build mcs:
cd mcs-0.10
(cd jay; make)
(cd mcs; make monomcs)
NOTE: the first time I ran it, I got:
[root@minerva mcs]# make monomcs
mcs --target exe -o mcs4.exe assign.cs attribute.cs driver.cs cs-parser.c=
s cs-tokenizer.cs tree.cs location.cs cfold.cs class.cs codegen.cs const.cs=
constant.cs decl.cs delegate.cs enum.cs ecore.cs expression.cs genericpars=
er.cs interface.cs literal.cs modifiers.cs namespace.cs parameter.cs report=
.cs rootcontext.cs statement.cs statementCollection.cs support.cs typemanag=
er.cs
(process:1042): ** CRITICAL **: file codegen-x86.c: line 8042 (mono_burg_r=
ule): assertion `state !=3D NULL' failed
(process:1042): ** CRITICAL **: file codegen-x86.c: line 8073 (mono_burg_k=
ids): assertion `MBTREE_STATE(tree) !=3D NULL' failed
/usr/local/bin/mcs: line 2: 1042 Segmentation fault /usr/local/bin/m=
ono /usr/local/bin/mcs.exe $*
make: *** [monomcs] Error 139
The second and third time I ran "make monomcs" it worked correctly. Wierd.
4. Now you will end up with a nice mcs4.exe in the mcs-0.10/mcs drectory. T=
hat is the compiler you just built. If you want to use that, replace the mc=
s.exe we distribute with mcs4.exe.
Mono class libraries cannot currently be built on Linux. They can be built =
on Windows and transfered as-is to a Linux system.
=3D=3D
FOR WINDOWS USING CYGWIN
1. You need to download and install the following:
- pkgconfig 0.80
- glib 1.3.12
- glib-dev 1.3.12
- libiconv 1.7
- libiconv-dev 1.7
- libintl 0.10.40
Precompiled zip files containing Cygwin versions of all these can be downlo=
aded from http://www.go-mono.com/download.html.
2. Unzip each zip file into /usr/local:
for zipfile in *.zip; do unzip -o $zipfile -d /usr/local; done
3. Add /usr/local/lib to the path so Mono's configure script and Mono binar=
ies can find the libraries located there:
export PATH=3D$PATH:/usr/local/lib
4. Untar mcs-0.10.tar.gz:
tar xvfz mcs-0.10.tar.gz
5. Build mcs and Mono classes (you need to have the Microsoft .Net build to=
ols in your path for this to succeed):
cd mcs-0.10
make
Generated libraries (corlib.dll, etc.) are placed in mcs-0.10/class/lib.
The compiler (mcs.exe) is placed in mcs-0.10/mcs.
------_=_NextPart_002_01C1D590.A86F79F8
Content-Type: text/html; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; charset=3Diso-8859-=
1">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version 6.0.5762.3">
<TITLE>Mono 0.10 build feedback</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->
<P><FONT SIZE=3D2 FACE=3D"Arial">Hi Miguel, congratulations on the 0.10 rel=
ease. I downloaded tar files a few hours ago and have been trying them out.=
I had a few build problems (mostly on Windows) that are marked below.</FON=
T></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Since I was taking notes, I also ended up =
writing out the steps to manually build Mono 0.10 and mcs 0.10, which you c=
an use to update the build page if you think they are OK.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Regards,</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">Tim Dyck</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">eWEEK</FONT>
</P>
<BR>
<BR>
<P><FONT FACE=3D"Arial" SIZE=3D2 COLOR=3D"#000000"> <<Mono 0.10 compi=
lation notes and instructions.txt>> </FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Mono 0.10 manual compilation instructions<=
/FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">FOR LINUX</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">1. You need to download and install the fo=
llowing:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>- pkgconfig 0.8.0 or later (<A HREF=3D"http://www.freedesktop.org/software=
/pkgconfig">http://www.freedesktop.org/software/pkgconfig</A>)</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- glib 1.3.11 or later, including glib 2.0.0 (<A HREF=3D"http://www.gtk.o=
rg/download/">http://www.gtk.org/download/</A>)</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>If you are installing using pre-compiled packages, you need both glib2 and=
glib2-devel.</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">2. Untar mono-0.10.tar.gz:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>tar xvfz mono-0.10.tar.gz</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">3. Build Mono:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>cd mono-0.10</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">./configure</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">make</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">make install</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial"> By default, Mono binaries are=
placed in /usr/local/bin.</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">4. You can now compile C# programs using m=
cs and run the generated programs using mono or mint.</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>e.g.</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
># cat HelloWorld.cs</FONT>
</P>
<P>  =
; <FONT SIZE=3D2 FACE=3D"Arial">using System; </FONT>
<BR> &nbs=
p; <FONT SIZE=3D2 FACE=3D"Arial">class HelloWorld {</FONT>
<BR> &nbs=
p; <FONT SIZE=3D2 FA=
CE=3D"Arial">public static void Main(String[] args) {</FONT>
<BR> &nbs=
p;  =
; <FONT SIZE=3D2 FACE=3D"Arial">Console.WriteLine(&=
quot;Hello from Mono!\n");</FONT>
<BR> &nbs=
p; <FONT SIZE=3D2 FA=
CE=3D"Arial">}</FONT>
<BR> &nbs=
p; <FONT SIZE=3D2 FACE=3D"Arial">}</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
># mcs HelloWorld.cs</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">RESULT: 0</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
># mono HelloWorld.exe</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">Hello from Mono!</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>RESULT: 0</FONT>
<BR> =20
<BR><FONT SIZE=3D2 FACE=3D"Arial">NOTE: mono configure process has one erro=
r (wrapper directory still referenced in configure and configure.in):</FONT=
>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>creating mono/tests/Makefile</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">creating mono/wrapper/Makefile</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">sed: can't read ./mono/wrapper/Makefile.in: No such file or directory</FO=
NT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">creating mono/monoburg/Makefile</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">creating mono/monograph/Makefile</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">NOTE: mcs script hard-coded to point to /u=
sr/local/bin to find binaries even if configure --prefix=3D... is used.</FO=
NT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">=3D=3D=3D</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">FOR WINDOWS USING CYGWIN</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">1. You need to download and install the fo=
llowing:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>- pkgconfig 0.80</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- glib 1.3.12</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- glib-dev 1.3.12</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- libiconv 1.7</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- libiconv-dev 1.7</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- libintl 0.10.40</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Precompiled zip files containing Cygwin ve=
rsions of all these can be downloaded from <A HREF=3D"http://www.go-mono.co=
m/download.html">http://www.go-mono.com/download.html</A>.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">2. Unzip each zip file into /usr/local:</F=
ONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>for zipfile in *.zip; do unzip -o $zipfile -d /usr/local; done</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">3. Add /usr/local/lib to the path so Mono'=
s configure script and Mono binaries can find the libraries located there:<=
/FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>export PATH=3D$PATH:/usr/local/lib</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">4. Untar mono-0.10.tar.gz:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>tar xvfz mono-0.10.tar.gz</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">5. Build Mono:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>cd mono-0.10</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">./configure</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">make</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">make install</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">NOTE: Make error in mono/metadata building=
socket-io.c: netdb.h not found even though it is in /usr/include.</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- edit socket-io.c line 11 to use winsock.h instead</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- edit Makefile to add -IC:/cygwin/usr/local/include to GLIB_CFLAGS line =
to fix problem buiding mono/metadata/unicode.c -- can't find iconv.h</FONT>=
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">NOTE: mono executable in mono/jit not gene=
rated: make error in codegen.h due to missing sys/syscall.h file on line 17=
. Also errors about missing pthread.h from mono/io-layer/critical-sections.=
h lines 7 and 9.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Also, same wrapper directory ./configure e=
rror.</FONT>
</P>
<BR>
<P><FONT SIZE=3D2 FACE=3D"Arial">mcs 0.10 manual compilation instructions</=
FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Starting with Mono 0.10, the Mono archives=
already include pre-compiled versions of mcs and the Mono classes. You onl=
y need to download the mcs archive and build it if you want to change mcs i=
tself or if you are developing Mono classes, or if you are following mcs or=
class assembly development on CVS.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">FOR LINUX</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">1. You need to download and install the fo=
llowing:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>- pkgconfig 0.8.0 or later (<A HREF=3D"http://www.freedesktop.org/software=
/pkgconfig">http://www.freedesktop.org/software/pkgconfig</A>)</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- glib 1.3.11 or later, including glib 2.0.0 (<A HREF=3D"http://www.gtk.o=
rg/download/">http://www.gtk.org/download/</A>)</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>If you are installing using pre-compiled packages, you need both glib2 and=
glib2-devel.</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">2. Untar mcs-0.10.tar.gz:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>tar xvfz mcs-0.10.tar.gz</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">3. Build mcs:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>cd mcs-0.10</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">(cd jay; make)</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">(cd mcs; make monomcs)</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">NOTE: the first time I ran it, I got:</FON=
T>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>[root@minerva mcs]# make monomcs</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">mcs --target exe -o mcs4.exe assign.cs attribute.cs driver.cs cs-pa=
rser.cs cs-tokenizer.cs tree.cs location.cs cfold.cs class.cs codegen.cs co=
nst.cs constant.cs decl.cs delegate.cs enum.cs ecore.cs expression.cs gener=
icparser.cs interface.cs literal.cs modifiers.cs namespace.cs parameter.cs =
report.cs rootcontext.cs statement.cs statementCollection.cs support.cs typ=
emanager.cs</FONT></P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>(process:1042): ** CRITICAL **: file codegen-x86.c: line 8042 (mono_burg_r=
ule): assertion `state !=3D NULL' failed</FONT></P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>(process:1042): ** CRITICAL **: file codegen-x86.c: line 8073 (mono_burg_k=
ids): assertion `MBTREE_STATE(tree) !=3D NULL' failed</FONT></P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>/usr/local/bin/mcs: line 2: 1042 Segmentation fault  =
; /usr/local/bin/mono /usr/local/bin/mcs.exe $*</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">make: *** [monomcs] Error 139</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>The second and third time I ran "make monomcs" it worked correct=
ly. Wierd.</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">4. Now you will end up with a nice mcs4.ex=
e in the mcs-0.10/mcs drectory. That is the compiler you just built. If you=
want to use that, replace the mcs.exe we distribute with mcs4.exe.</FONT><=
/P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Mono class libraries cannot currently be b=
uilt on Linux. They can be built on Windows and transfered as-is to a Linux=
system.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">=3D=3D</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">FOR WINDOWS USING CYGWIN</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">1. You need to download and install the fo=
llowing:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>- pkgconfig 0.80</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- glib 1.3.12</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- glib-dev 1.3.12</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- libiconv 1.7</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- libiconv-dev 1.7</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">- libintl 0.10.40</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">Precompiled zip files containing Cygwin ve=
rsions of all these can be downloaded from <A HREF=3D"http://www.go-mono.co=
m/download.html">http://www.go-mono.com/download.html</A>.</FONT></P>
<P><FONT SIZE=3D2 FACE=3D"Arial">2. Unzip each zip file into /usr/local:</F=
ONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>for zipfile in *.zip; do unzip -o $zipfile -d /usr/local; done</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">3. Add /usr/local/lib to the path so Mono'=
s configure script and Mono binaries can find the libraries located there:<=
/FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>export PATH=3D$PATH:/usr/local/lib</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">4. Untar mcs-0.10.tar.gz:</FONT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>tar xvfz mcs-0.10.tar.gz</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial">5. Build mcs and Mono classes (you need to=
have the Microsoft .Net build tools in your path for this to succeed):</FO=
NT>
</P>
<P> <FONT SIZE=3D2 FACE=3D"Arial"=
>cd mcs-0.10</FONT>
<BR> <FONT SIZE=3D2 FACE=3D"Arial=
">make</FONT>
</P>
<P><FONT SIZE=3D2 FACE=3D"Arial"> Generated libraries (corlib.d=
ll, etc.) are placed in mcs-0.10/class/lib.</FONT>
<BR><FONT SIZE=3D2 FACE=3D"Arial"> The compiler (mcs.exe) is pl=
aced in mcs-0.10/mcs.</FONT>
</P>
</BODY>
</HTML>
------_=_NextPart_002_01C1D590.A86F79F8--
------_=_NextPart_001_01C1D590.A86F79F8
Content-Type: text/plain; name="Mono 0.10 compilation notes and instructions.txt"
Content-Description: Mono 0.10 compilation notes and instructions.txt
Content-Disposition: attachment; filename="Mono 0.10 compilation notes and instructions.txt"
Content-Transfer-Encoding: base64
TW9ubyAwLjEwIG1hbnVhbCBjb21waWxhdGlvbiBpbnN0cnVjdGlvbnMNCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoNCkZPUiBMSU5VWA0KDQoxLiBZb3UgbmVlZCB0
byBkb3dubG9hZCBhbmQgaW5zdGFsbCB0aGUgZm9sbG93aW5nOg0KDQoJLSBwa2djb25maWcgMC44
LjAgb3IgbGF0ZXIgKGh0dHA6Ly93d3cuZnJlZWRlc2t0b3Aub3JnL3NvZnR3YXJlL3BrZ2NvbmZp
ZykNCgktIGdsaWIgMS4zLjExIG9yIGxhdGVyLCBpbmNsdWRpbmcgZ2xpYiAyLjAuMCAoaHR0cDov
L3d3dy5ndGsub3JnL2Rvd25sb2FkLykNCg0KCUlmIHlvdSBhcmUgaW5zdGFsbGluZyB1c2luZyBw
cmUtY29tcGlsZWQgcGFja2FnZXMsIHlvdSBuZWVkIGJvdGggZ2xpYjIgYW5kIGdsaWIyLWRldmVs
Lg0KDQoyLiBVbnRhciBtb25vLTAuMTAudGFyLmd6Og0KDQoJdGFyIHh2ZnogbW9uby0wLjEwLnRh
ci5neg0KDQozLiBCdWlsZCBNb25vOg0KDQoJY2QgbW9uby0wLjEwDQoJLi9jb25maWd1cmUNCglt
YWtlDQoJbWFrZSBpbnN0YWxsDQoNCiAgIEJ5IGRlZmF1bHQsIE1vbm8gYmluYXJpZXMgYXJlIHBs
YWNlZCBpbiAvdXNyL2xvY2FsL2Jpbi4NCg0KNC4gWW91IGNhbiBub3cgY29tcGlsZSBDIyBwcm9n
cmFtcyB1c2luZyBtY3MgYW5kIHJ1biB0aGUgZ2VuZXJhdGVkIHByb2dyYW1zIHVzaW5nIG1vbm8g
b3IgbWludC4NCg0KCWUuZy4NCg0KCSMgY2F0IEhlbGxvV29ybGQuY3MNCg0KCQl1c2luZyBTeXN0
ZW07IA0KCQljbGFzcyBIZWxsb1dvcmxkIHsNCgkJCXB1YmxpYyBzdGF0aWMgdm9pZCBNYWluKFN0
cmluZ1tdIGFyZ3MpIHsNCgkJCQlDb25zb2xlLldyaXRlTGluZSgiSGVsbG8gZnJvbSBNb25vIVxu
Iik7DQoJCQl9DQoJCX0NCg0KCSMgbWNzIEhlbGxvV29ybGQuY3MNCglSRVNVTFQ6IDANCg0KCSMg
bW9ubyBIZWxsb1dvcmxkLmV4ZQ0KCUhlbGxvIGZyb20gTW9ubyENCg0KCVJFU1VMVDogMA0KCQ0K
Tk9URTogbW9ubyBjb25maWd1cmUgcHJvY2VzcyBoYXMgb25lIGVycm9yICh3cmFwcGVyIGRpcmVj
dG9yeSBzdGlsbCByZWZlcmVuY2VkIGluIGNvbmZpZ3VyZSBhbmQgY29uZmlndXJlLmluKToNCg0K
CWNyZWF0aW5nIG1vbm8vdGVzdHMvTWFrZWZpbGUNCgljcmVhdGluZyBtb25vL3dyYXBwZXIvTWFr
ZWZpbGUNCglzZWQ6IGNhbid0IHJlYWQgLi9tb25vL3dyYXBwZXIvTWFrZWZpbGUuaW46IE5vIHN1
Y2ggZmlsZSBvciBkaXJlY3RvcnkNCgljcmVhdGluZyBtb25vL21vbm9idXJnL01ha2VmaWxlDQoJ
Y3JlYXRpbmcgbW9uby9tb25vZ3JhcGgvTWFrZWZpbGUNCg0KTk9URTogbWNzIHNjcmlwdCBoYXJk
LWNvZGVkIHRvIHBvaW50IHRvIC91c3IvbG9jYWwvYmluIHRvIGZpbmQgYmluYXJpZXMgZXZlbiBp
ZiBjb25maWd1cmUgLS1wcmVmaXg9Li4uIGlzIHVzZWQuDQoNCj09PQ0KDQpGT1IgV0lORE9XUyBV
U0lORyBDWUdXSU4NCg0KMS4gWW91IG5lZWQgdG8gZG93bmxvYWQgYW5kIGluc3RhbGwgdGhlIGZv
bGxvd2luZzoNCg0KCS0gcGtnY29uZmlnIDAuODANCgktIGdsaWIgMS4zLjEyDQoJLSBnbGliLWRl
diAxLjMuMTINCgktIGxpYmljb252IDEuNw0KCS0gbGliaWNvbnYtZGV2IDEuNw0KCS0gbGliaW50
bCAwLjEwLjQwDQoNClByZWNvbXBpbGVkIHppcCBmaWxlcyBjb250YWluaW5nIEN5Z3dpbiB2ZXJz
aW9ucyBvZiBhbGwgdGhlc2UgY2FuIGJlIGRvd25sb2FkZWQgZnJvbSBodHRwOi8vd3d3LmdvLW1v
bm8uY29tL2Rvd25sb2FkLmh0bWwuDQoNCjIuIFVuemlwIGVhY2ggemlwIGZpbGUgaW50byAvdXNy
L2xvY2FsOg0KDQoJZm9yIHppcGZpbGUgaW4gKi56aXA7IGRvIHVuemlwIC1vICR6aXBmaWxlIC1k
IC91c3IvbG9jYWw7IGRvbmUNCg0KMy4gQWRkIC91c3IvbG9jYWwvbGliIHRvIHRoZSBwYXRoIHNv
IE1vbm8ncyBjb25maWd1cmUgc2NyaXB0IGFuZCBNb25vIGJpbmFyaWVzIGNhbiBmaW5kIHRoZSBs
aWJyYXJpZXMgbG9jYXRlZCB0aGVyZToNCg0KCWV4cG9ydCBQQVRIPSRQQVRIOi91c3IvbG9jYWwv
bGliDQoNCjQuIFVudGFyIG1vbm8tMC4xMC50YXIuZ3o6DQoNCgl0YXIgeHZmeiBtb25vLTAuMTAu
dGFyLmd6DQoNCjUuIEJ1aWxkIE1vbm86DQoNCgljZCBtb25vLTAuMTANCgkuL2NvbmZpZ3VyZQ0K
CW1ha2UNCgltYWtlIGluc3RhbGwNCg0KTk9URTogTWFrZSBlcnJvciBpbiBtb25vL21ldGFkYXRh
IGJ1aWxkaW5nIHNvY2tldC1pby5jOiBuZXRkYi5oIG5vdCBmb3VuZCBldmVuIHRob3VnaCBpdCBp
cyBpbiAvdXNyL2luY2x1ZGUuDQoJLSBlZGl0IHNvY2tldC1pby5jIGxpbmUgMTEgdG8gdXNlIHdp
bnNvY2suaCBpbnN0ZWFkDQoJLSBlZGl0IE1ha2VmaWxlIHRvIGFkZCAtSUM6L2N5Z3dpbi91c3Iv
bG9jYWwvaW5jbHVkZSB0byBHTElCX0NGTEFHUyBsaW5lIHRvIGZpeCBwcm9ibGVtIGJ1aWRpbmcg
bW9uby9tZXRhZGF0YS91bmljb2RlLmMgLS0gY2FuJ3QgZmluZCBpY29udi5oDQoNCk5PVEU6IG1v
bm8gZXhlY3V0YWJsZSBpbiBtb25vL2ppdCBub3QgZ2VuZXJhdGVkOiBtYWtlIGVycm9yIGluIGNv
ZGVnZW4uaCBkdWUgdG8gbWlzc2luZyBzeXMvc3lzY2FsbC5oIGZpbGUgb24gbGluZSAxNy4gQWxz
byBlcnJvcnMgYWJvdXQgbWlzc2luZyBwdGhyZWFkLmggZnJvbSBtb25vL2lvLWxheWVyL2NyaXRp
Y2FsLXNlY3Rpb25zLmggbGluZXMgNyBhbmQgOS4NCg0KQWxzbywgc2FtZSB3cmFwcGVyIGRpcmVj
dG9yeSAuL2NvbmZpZ3VyZSBlcnJvci4NCg0KDQptY3MgMC4xMCBtYW51YWwgY29tcGlsYXRpb24g
aW5zdHJ1Y3Rpb25zDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoN
ClN0YXJ0aW5nIHdpdGggTW9ubyAwLjEwLCB0aGUgTW9ubyBhcmNoaXZlcyBhbHJlYWR5IGluY2x1
ZGUgcHJlLWNvbXBpbGVkIHZlcnNpb25zIG9mIG1jcyBhbmQgdGhlIE1vbm8gY2xhc3Nlcy4gWW91
IG9ubHkgbmVlZCB0byBkb3dubG9hZCB0aGUgbWNzIGFyY2hpdmUgYW5kIGJ1aWxkIGl0IGlmIHlv
dSB3YW50IHRvIGNoYW5nZSBtY3MgaXRzZWxmIG9yIGlmIHlvdSBhcmUgZGV2ZWxvcGluZyBNb25v
IGNsYXNzZXMsIG9yIGlmIHlvdSBhcmUgZm9sbG93aW5nIG1jcyBvciBjbGFzcyBhc3NlbWJseSBk
ZXZlbG9wbWVudCBvbiBDVlMuDQoNCkZPUiBMSU5VWA0KDQoxLiBZb3UgbmVlZCB0byBkb3dubG9h
ZCBhbmQgaW5zdGFsbCB0aGUgZm9sbG93aW5nOg0KDQoJLSBwa2djb25maWcgMC44LjAgb3IgbGF0
ZXIgKGh0dHA6Ly93d3cuZnJlZWRlc2t0b3Aub3JnL3NvZnR3YXJlL3BrZ2NvbmZpZykNCgktIGds
aWIgMS4zLjExIG9yIGxhdGVyLCBpbmNsdWRpbmcgZ2xpYiAyLjAuMCAoaHR0cDovL3d3dy5ndGsu
b3JnL2Rvd25sb2FkLykNCg0KCUlmIHlvdSBhcmUgaW5zdGFsbGluZyB1c2luZyBwcmUtY29tcGls
ZWQgcGFja2FnZXMsIHlvdSBuZWVkIGJvdGggZ2xpYjIgYW5kIGdsaWIyLWRldmVsLg0KDQoyLiBV
bnRhciBtY3MtMC4xMC50YXIuZ3o6DQoNCgl0YXIgeHZmeiBtY3MtMC4xMC50YXIuZ3oNCg0KMy4g
QnVpbGQgbWNzOg0KDQoJY2QgbWNzLTAuMTANCgkoY2QgamF5OyBtYWtlKQ0KCShjZCBtY3M7IG1h
a2UgbW9ub21jcykNCg0KTk9URTogdGhlIGZpcnN0IHRpbWUgSSByYW4gaXQsIEkgZ290Og0KDQoJ
W3Jvb3RAbWluZXJ2YSBtY3NdIyBtYWtlIG1vbm9tY3MNCgltY3MgIC0tdGFyZ2V0IGV4ZSAtbyBt
Y3M0LmV4ZSBhc3NpZ24uY3MgYXR0cmlidXRlLmNzIGRyaXZlci5jcyBjcy1wYXJzZXIuY3MgY3Mt
dG9rZW5pemVyLmNzIHRyZWUuY3MgbG9jYXRpb24uY3MgY2ZvbGQuY3MgY2xhc3MuY3MgY29kZWdl
bi5jcyBjb25zdC5jcyBjb25zdGFudC5jcyBkZWNsLmNzIGRlbGVnYXRlLmNzIGVudW0uY3MgZWNv
cmUuY3MgZXhwcmVzc2lvbi5jcyBnZW5lcmljcGFyc2VyLmNzIGludGVyZmFjZS5jcyBsaXRlcmFs
LmNzIG1vZGlmaWVycy5jcyBuYW1lc3BhY2UuY3MgcGFyYW1ldGVyLmNzIHJlcG9ydC5jcyByb290
Y29udGV4dC5jcyBzdGF0ZW1lbnQuY3Mgc3RhdGVtZW50Q29sbGVjdGlvbi5jcyBzdXBwb3J0LmNz
IHR5cGVtYW5hZ2VyLmNzDQoNCgkocHJvY2VzczoxMDQyKTogKiogQ1JJVElDQUwgKio6IGZpbGUg
Y29kZWdlbi14ODYuYzogbGluZSA4MDQyIChtb25vX2J1cmdfcnVsZSk6IGFzc2VydGlvbiBgc3Rh
dGUgIT0gTlVMTCcgZmFpbGVkDQoNCgkocHJvY2VzczoxMDQyKTogKiogQ1JJVElDQUwgKio6IGZp
bGUgY29kZWdlbi14ODYuYzogbGluZSA4MDczIChtb25vX2J1cmdfa2lkcyk6IGFzc2VydGlvbiBg
TUJUUkVFX1NUQVRFKHRyZWUpICE9IE5VTEwnIGZhaWxlZA0KCS91c3IvbG9jYWwvYmluL21jczog
bGluZSAyOiAgMTA0MiBTZWdtZW50YXRpb24gZmF1bHQgICAgICAvdXNyL2xvY2FsL2Jpbi9tb25v
IC91c3IvbG9jYWwvYmluL21jcy5leGUgJCoNCgltYWtlOiAqKiogW21vbm9tY3NdIEVycm9yIDEz
OQ0KDQoJVGhlIHNlY29uZCBhbmQgdGhpcmQgdGltZSBJIHJhbiAibWFrZSBtb25vbWNzIiBpdCB3
b3JrZWQgY29ycmVjdGx5LiBXaWVyZC4NCg0KNC4gTm93IHlvdSB3aWxsIGVuZCB1cCB3aXRoIGEg
bmljZSBtY3M0LmV4ZSBpbiB0aGUgbWNzLTAuMTAvbWNzIGRyZWN0b3J5LiBUaGF0IGlzIHRoZSBj
b21waWxlciB5b3UganVzdCBidWlsdC4gSWYgeW91IHdhbnQgdG8gdXNlIHRoYXQsIHJlcGxhY2Ug
dGhlIG1jcy5leGUgd2UgZGlzdHJpYnV0ZSB3aXRoIG1jczQuZXhlLg0KDQpNb25vIGNsYXNzIGxp
YnJhcmllcyBjYW5ub3QgY3VycmVudGx5IGJlIGJ1aWx0IG9uIExpbnV4LiBUaGV5IGNhbiBiZSBi
dWlsdCBvbiBXaW5kb3dzIGFuZCB0cmFuc2ZlcmVkIGFzLWlzIHRvIGEgTGludXggc3lzdGVtLg0K
DQo9PQ0KDQpGT1IgV0lORE9XUyBVU0lORyBDWUdXSU4NCg0KMS4gWW91IG5lZWQgdG8gZG93bmxv
YWQgYW5kIGluc3RhbGwgdGhlIGZvbGxvd2luZzoNCg0KCS0gcGtnY29uZmlnIDAuODANCgktIGds
aWIgMS4zLjEyDQoJLSBnbGliLWRldiAxLjMuMTINCgktIGxpYmljb252IDEuNw0KCS0gbGliaWNv
bnYtZGV2IDEuNw0KCS0gbGliaW50bCAwLjEwLjQwDQoNClByZWNvbXBpbGVkIHppcCBmaWxlcyBj
b250YWluaW5nIEN5Z3dpbiB2ZXJzaW9ucyBvZiBhbGwgdGhlc2UgY2FuIGJlIGRvd25sb2FkZWQg
ZnJvbSBodHRwOi8vd3d3LmdvLW1vbm8uY29tL2Rvd25sb2FkLmh0bWwuDQoNCjIuIFVuemlwIGVh
Y2ggemlwIGZpbGUgaW50byAvdXNyL2xvY2FsOg0KDQoJZm9yIHppcGZpbGUgaW4gKi56aXA7IGRv
IHVuemlwIC1vICR6aXBmaWxlIC1kIC91c3IvbG9jYWw7IGRvbmUNCg0KMy4gQWRkIC91c3IvbG9j
YWwvbGliIHRvIHRoZSBwYXRoIHNvIE1vbm8ncyBjb25maWd1cmUgc2NyaXB0IGFuZCBNb25vIGJp
bmFyaWVzIGNhbiBmaW5kIHRoZSBsaWJyYXJpZXMgbG9jYXRlZCB0aGVyZToNCg0KCWV4cG9ydCBQ
QVRIPSRQQVRIOi91c3IvbG9jYWwvbGliDQoNCjQuIFVudGFyIG1jcy0wLjEwLnRhci5nejoNCg0K
CXRhciB4dmZ6IG1jcy0wLjEwLnRhci5neg0KDQo1LiBCdWlsZCBtY3MgYW5kIE1vbm8gY2xhc3Nl
cyAoeW91IG5lZWQgdG8gaGF2ZSB0aGUgTWljcm9zb2Z0IC5OZXQgYnVpbGQgdG9vbHMgaW4geW91
ciBwYXRoIGZvciB0aGlzIHRvIHN1Y2NlZWQpOg0KDQoJY2QgbWNzLTAuMTANCgltYWtlDQoNCiAg
IEdlbmVyYXRlZCBsaWJyYXJpZXMgKGNvcmxpYi5kbGwsIGV0Yy4pIGFyZSBwbGFjZWQgaW4gbWNz
LTAuMTAvY2xhc3MvbGliLg0KICAgVGhlIGNvbXBpbGVyIChtY3MuZXhlKSBpcyBwbGFjZWQgaW4g
bWNzLTAuMTAvbWNzLg0K
------_=_NextPart_001_01C1D590.A86F79F8--
--=-pT9E3W3+yoF5tJ/BgnAb--