Wednesday, January 21, 2009

Mono and Cygwin

There are a lot's articles talking about using Mono on Cygwin, as following,
Actually, Mirotin referred the acticle of Shockey and Shana. Thinkmore refered the article of Mirotin.

Keywords is MONO, Cygwin, Windows, and monodevelop
關鍵字是Mono, Cygwin, Windows和MonoDevelop。

I tried to use MonoDevelop on Windows. So I have to install Cygwin first. And we need following resources.

Requirements for this process:
Steps:
  1. Installation of Cygwin
  2. Configuration of Cygwin
  3. Installation of extra packages
  4. Installation of Subversion
  5. Installation of MONOBuilding of MONO
It's ok if the steps 3, 4, 5 are not in the order.

PS: there are two points should be notified.
Following statements mean is the content of a text file, for example configuration file.
==================
configuration file
==================

Following statements mean the command in cygwin console
---------------------------
$command
---------------------------
In order to recognize easily the space in the command, I use 2 or 3 space.

Warning:
Actually, my first and second installation is faliure. It may be cause by several situations.
  1. version conflict
  2. cygwin package conflict
My first time is installed with Mono.2.0.1, and second time is Mono.2.2 from http://www.mono-project.com/Downloads
The first time error is shown at below.
The scond time error is shown at
The third time I reinstalled the cygwin and use Mono.1.2.1 from http://forge.novell.com/modules/xfmod/project/?monowin32

Step 1: Installation of Cygwin
Installation of cygwin is easy, and u can find a lot of tutorial from Internet. Or refer to HERE.
我是想要在WXP上使用MonoDeveop,所以需要 Cygwin。 安裝Cygiwn相當容易,網路上有很多資料,或是參考HERE
Cygwin environment:
  • Editor: like vim, macs, or others editors.
  • Devel/automake: Wrapper scripts for automake and aclocal
  • Devel/bison: Aparser generator that is compatible with YACC
  • Devel/gcc: gcc: compiler
  • Devel/gdb: The GNU debugger
  • Devel/gettext: GNU internationalization development utilities
  • Devel/gettext-devel: GNU Internationalization development utilities
  • Devel/intltool: GNOME source internalization scripts
  • Devel/libtool: A shared library generation tool
  • Devel/pkg-config: a utility used to retrieve information about installed libraries
Shana and Mirotin both suggests, DO NOT Install "make" package.
"The make version that comes with cygwin does not handle dos-style paths in pc files well, and will cause "multiple target patterns" errors when compiling Mono," Shana said.
Mirotin referred to the article of Shana and agreed the suggestion.

Step2: Configuration of Cygwin
Now, we have to edit the "c:/cygwin/home/your_name/.bashrc" file.
Usually, the file is hidden, so u can't see them by command "ls", but u can see it by command "ls -a". (Know more about ls command)
Then u can edit it by the command of editor, like
-------------------
$vi .bashrc
-------------------

Then add the following configuration to the file.
Or open the file location by any kind of folder explorer, like Windows Explorer, and edit the .bashrc file by win-based editor.
Mirotin suggest Notepad++.
But DO NOT transform the data format from Linux format to DOS format if the editor sends the request.

About configuration, Shana said, give the three paths is enough.
==========================================
PATH=.:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/Mono-1.2.2.1/bin
PKG_CONFIG_PATH=.:/lib/pkgconfig:/cygdrive/c/Mono-1.2.2.1/lib/pkgconfig
LD_LIBRARY_PATH=.:/usr/local/lib:/usr/lib:/lib:/cygdrive/c/Mono-1.2.2.1/lib
export PATH PKG_CONFIG_PATH LD_LIBRARY_PATH
==========================================
Above sequence is the same with
==========================================
export PATH=.:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/cygdrive/c/Mono-1.2.2.1/bin
export PKG_CONFIG_PATH=.:/lib/pkgconfig:/cygdrive/c/Mono-1.2.2.1/lib/pkgconfig
export LD_LIBRARY_PATH=.:/usr/local/lib:/usr/lib:/lib:/cygdrive/c/Mono-1.2.2.1/lib

==========================================
Be careful your version of Mono (The red characters). The file folder is different with differnet version.

Mirotin and Shockey use the same configuration setting as following, but read lines are the same with Shana,
==========================================
#Environment Variables for Mono
export PATH="/usr/local/bin:/usr/local/lib:$PATH:/usr/local/icu/bin"
export ACLOCAL_FLAGS="-I /usr/share/aclocal"
export CPPFLAGS="$CPPFLAGS -I/usr/local/include"
export LDFLAGS="$LDFLAGS -L/usr/local/lib"
export CC="gcc -mno-cygwin"
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/lib/pkgconfig"
export LD_LIBRARY_PATH="/usr/local/lib:/usr/lib"
export MONO_PATH="/usr/local/lib:/usr/lib:$MONO_PATH"
export MONO_CFG_PATH="/usr/local/etc:/usr/etc:$MONO_CFG_PATH"

#Environment variables for .NET if not already in your Windows PATH
#These variables could be needed by older Mono build systems
#export PATH=$PATH:`GetNetSdkLocation -cs msnet_1.1`/v1.1.4322
#export PATH=$PATH:`GetNetSdkLocation -cs msnetsdk_1.1`/Bin
==========================================
Attention the last two lines are blocked by symbol "#". Remove the # if u need the setting.

If u can't find the .bashrc file in your user folder, you can edit it in "cygwin\etc\skel", the Cygwin Bash Shell file.
I suggest u rename the original .bashrc first, ex .bashrc.original for backup.

Step3: Installation of extra packages
Download the file to a particular location, for example C:/cygwin/download. Then type the following command.
-------------------------------------------------------
$tar -xjvf /download/make-3.80-1.tar.bz2
-------------------------------------------------------
-x Extract files from archive.
-j Compress archive using bzip2.
-v Verbose operation mode.
-f archive Filename where the archive is stored. Defaults to /dev/rst0.
option v is not necessary.

Type the command,
-------------------------------------------
$make --version
-------------------------------------------
to verify it.
Do the same process as make-3.80-1.tar.bz2.
-------------------------------------------------------
$tar -xjvf /download/perl-XML-Parser-2.34-1.tar.bz2
-------------------------------------------------------
Type the command,
-------------------------------------------
$perl --version
-------------------------------------------
to verify it.


Step4: Installation of Subversion
Subversion is the version control system and is very helpful to manage the version of your programs. Download the lastest version.
Because the lastest version is zip file, not an installer.
Mirotin suggest a solution.
We can download *.msi file, for example "Setup-Subversion-1.5.1.en-us.msi" first and install it.
Then copy the files extracted from the latest distribution, for exmaple "svn-win32-1.5.5.zip", to replace the files installed from "Setup-Subversion-1.5.1.en-us.msi".
Then try
-------------------------------------------
$svn --version
-------------------------------------------
to test the success of SVN installation.
If it doesn't work, you can add ./subversion/bin to your .bashrc.
Or install following software, it will set up environment for u.
Download the latest version and install it.
You may need to restart the PC. After that, you will see the Tortoise option when you press the right button of mouse.
When I wrote the article, the URL for repository given by Shockey is invalid. So I use the URL for repository given by Mirotin.
Valid:
  • svn://anonsvn.mono-project.com/source/trunk/mono
  • svn://anonsvn.mono-project.com/source/trunk/mcs
Invalid:
  • svn://svn.myrealbox.com/source/trunk/mono
  • svn://svn.myrealbox.com/source/trunk/mcs
In Shockey article, he suggested to create the folder, "C:\monosvn\mono\x.x".
In Mirotin article, he suggested to create somewhere folder which include 2 empty folders, mono and mcs.

I create two empty folders which are "C:\monosvn\mono" and "C:\monosvn\mcs" respectively.
"C:\monosvn\mono" is for checkout "svn://anonsvn.mono-project.com/source/trunk/mono".
"C:\monosvn\mcs" is for checkout "svn://anonsvn.mono-project.com/source/trunk/mcs".

If you use command-line client, assume we want to get mono sources to Cand mcs sources from the special subversion server. Type following commands.
--------------------------------------------------------------
$svn co svn://anonsvn.mono-project.com/source/trunk/mono to C:/monosvn/
$svn co svn://anonsvn.mono-project.com/source/trunk/mcs to C:/monosvn/
--------------------------------------------------------------

To know more about svn checkout HERE.
If u use TortoiseSVN, just create the "C:\monosvn\mono" and "C:\monosvn\mcs" in Windows Explorer, because TortoiseSVN is integrated with Windows Explorer.
And then right-cliking on "C:\monosvn\mono" and "C:\monosvn\mcs" respectively and choose "SVN Checkout".
Then past or type the "svn://ano...." to URL of repository.
The process will take for a while, and u will see Figure-01 when the process is accomplished.

Figure-01
Then we have to copy the file for building. Because the above file are SVN files, we have to use Export function of SVN.
But if we use TortoiseSVN to export file, the file will be in DOS-format and won't be readable by Cygwin.
So we only use command-line client to export the files which we need.
Type following commands.
--------------------------------------------------------------
Under C:/cygwin/download
#mkdir mono
Go C:/monosvn
$svn export mcs C:/cygwin/download/mono/mcs --native-eol LF
$svn export mono C:/cygwin/download/mono/mono --native-eol LF
--------------------------------------------------------------
To know more about svn export HERE.

Step5: Installation of Mono
Mirotin and Shockey both recommend DO NOT use the default destination location, and change the location to "C:\mono\Mono-x.x.x".
Installation of MONO is also simple, we don't talk about it here.
Before building of MONO, we have to do some preparations.

First, mount mono bin, lib and other directories into our cygwin environment.
Typing the command,
-------------------------------------------
$mount -s c:/mono/Mono-x.x.x /usr/local
-------------------------------------------

Because I use mono-2.0.1, the command should be
-------------------------------------------
$mount -s c:/mono/Mono-2.0.1 /usr/local
-------------------------------------------

Type the command,
-------------------------------------------
$mono --version
-------------------------------------------
to verify it.
To know more about mount, HERE.

Second, we have to substitute Microsoft compiler (probably installed on your machine) with mono's mcs.
Type the command,
-------------------------------------------
$ln -s /usr/local/bin/mcs ./csc.exe
-------------------------------------------

Type the command,
-------------------------------------------
$csc.exe --version
-------------------------------------------
to verify it. If right, u will see the version of the compiler.

To know more about ln (Command link), HERE.

Step6: Building of Mono
Finally, we can build Mono now.
In Shockey article, the monoresgen.exe doesn't exist in the version which I use.
So I do the building process mentioned in Mirotin acticle.
Go to the folder which we use svn export to generate, C:/cygwin/download/mono/mono.
There is a ./autogen.sh, buildconf for building Mono.
Type commands,
------------------------------------------------------------------
$./autogen.sh --prefix=C:/mono/Mono-x.x.x --with-preview=yes
------------------------------------------------------------------
The process of libtoolizing will take for a while. If there are some error occur, please watch out the error messages and check the preview steps.
If the messages show that you install "glib2-dev" package, please remove Genome/glib2 packages.
It will occur some dependence error, but we just remove it temporarily. Just remove it and cancle the checking below the panel screen, so called "Install these packages to meet dependencies(RECOMMENDED)".

If ./autogen.sh is accomplished, then type
-----------------------
$make
-----------------------
If you encounter the problem, "mono compilation stopping on t-es.gmo", u need to install "gettext-devel" package. Here is the solution.
I just try to install gettext-devel package and solve the error.
Then remove the folder, C:/monosvn/mono and C:/monosvn/mcs. And svn export again.
If you miss the step to download proper make file, you also will encounter problems.

It should work, but I didn't...T_T
I got an error showing,
=======================================================
from ../../mono/metadata/gc-internal.h:14,
from aot-compiler.c:61:
../../libgc/include/gc.h:1014: warning: function declaration isn't a prototype
aot-compiler.c: In function `compile_method':
aot-compiler.c:4062: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
aot-compiler.c:4083: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
aot-compiler.c:4093: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
aot-compiler.c:4132: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
aot-compiler.c:4182: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
aot-compiler.c:4265: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
aot-compiler.c:4344: warning: passing arg 1 of `InterlockedIncrement' from incom
patible pointer type
CC aot-runtime.lo
In file included from ../../mono/os/gc_wrapper.h:38,
from ../../mono/metadata/gc-internal.h:14,
from aot-runtime.c:49:
../../libgc/include/gc.h:1014: warning: function declaration isn't a prototype
CC graph.lo
CC mini-exceptions.lo
In file included from ../../mono/os/gc_wrapper.h:38,
from ../../mono/metadata/gc-internal.h:14,
from mini-exceptions.c:39:
../../libgc/include/gc.h:1014: warning: function declaration isn't a prototype
mini-exceptions.c: In function `mono_print_thread_dump':
mini-exceptions.c:1549: warning: implicit declaration of function `wapi_current_
thread_desc'
mini-exceptions.c:1549: warning: nested extern declaration of `wapi_current_thre
ad_desc'
mini-exceptions.c:1549: warning: assignment makes pointer from integer without a
cast
CC mini-codegen.lo
mini-codegen.c: In function `get_register_spilling':
mini-codegen.c:695: warning: unknown conversion type character `I' in format
mini-codegen.c:695: warning: int format, different type arg (arg 3)
mini-codegen.c:695: warning: too many arguments for format
mini-codegen.c:716: warning: unknown conversion type character `I' in format
mini-codegen.c:716: warning: too many arguments for format
mini-codegen.c: In function `mono_is_regsize_var':
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_END' not handled in s
witch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_VOID' not handled in
switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_I8' not handled in sw
itch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_U8' not handled in sw
itch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_R4' not handled in sw
itch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_R8' not handled in sw
itch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_BYREF' not handled in
switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_VAR' not handled in s
witch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_TYPEDBYREF' not handl
ed in switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_MVAR' not handled in
switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_CMOD_REQD' not handle
d in switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_CMOD_OPT' not handled
in switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_INTERNAL' not handled
in switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_MODIFIER' not handled
in switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_SENTINEL' not handled
in switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_PINNED' not handled i
n switch
mini-codegen.c:2234: warning: enumeration value `MONO_TYPE_ENUM' not handled in
switch
CC mini-trampolines.lo
CC declsec.lo
CC wapihandles.lo
CC branch-opts.lo
CC generic-sharing.lo
CC regalloc2.lo
CC simd-intrinsics.lo
simd-intrinsics.c: In function `emit_intrinsics':
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_END' not handled in
switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_VOID' not handled i
n switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_BOOLEAN' not handle
d in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_CHAR' not handled i
n switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_STRING' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_PTR' not handled in
switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_BYREF' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_VALUETYPE' not hand
led in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_CLASS' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_VAR' not handled in
switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_ARRAY' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_GENERICINST' not ha
ndled in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_TYPEDBYREF' not han
dled in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_I' not handled in s
witch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_U' not handled in s
witch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_FNPTR' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_OBJECT' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_SZARRAY' not handle
d in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_MVAR' not handled i
n switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_CMOD_REQD' not hand
led in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_CMOD_OPT' not handl
ed in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_INTERNAL' not handl
ed in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_MODIFIER' not handl
ed in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_SENTINEL' not handl
ed in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_PINNED' not handled
in switch
simd-intrinsics.c:946: warning: enumeration value `MONO_TYPE_ENUM' not handled i
n switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_END' not handled in
switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_VOID' not handled i
n switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_BOOLEAN' not handle
d in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_CHAR' not handled i
n switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_I8' not handled in
switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_U8' not handled in
switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_R8' not handled in
switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_STRING' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_PTR' not handled in
switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_BYREF' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_VALUETYPE' not hand
led in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_CLASS' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_VAR' not handled in
switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_ARRAY' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_GENERICINST' not ha
ndled in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_TYPEDBYREF' not han
dled in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_I' not handled in s
witch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_U' not handled in s
witch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_FNPTR' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_OBJECT' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_SZARRAY' not handle
d in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_MVAR' not handled i
n switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_CMOD_REQD' not hand
led in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_CMOD_OPT' not handl
ed in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_INTERNAL' not handl
ed in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_MODIFIER' not handl
ed in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_SENTINEL' not handl
ed in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_PINNED' not handled
in switch
simd-intrinsics.c:922: warning: enumeration value `MONO_TYPE_ENUM' not handled i
n switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_END' not handled in
switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_VOID' not handled i
n switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_BOOLEAN' not handle
d in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_CHAR' not handled i
n switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_I8' not handled in
switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_U8' not handled in
switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_R8' not handled in
switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_STRING' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_PTR' not handled in
switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_BYREF' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_VALUETYPE' not hand
led in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_CLASS' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_VAR' not handled in
switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_ARRAY' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_GENERICINST' not ha
ndled in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_TYPEDBYREF' not han
dled in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_I' not handled in s
witch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_U' not handled in s
witch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_FNPTR' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_OBJECT' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_SZARRAY' not handle
d in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_MVAR' not handled i
n switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_CMOD_REQD' not hand
led in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_CMOD_OPT' not handl
ed in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_INTERNAL' not handl
ed in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_MODIFIER' not handl
ed in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_SENTINEL' not handl
ed in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_PINNED' not handled
in switch
simd-intrinsics.c:903: warning: enumeration value `MONO_TYPE_ENUM' not handled i
n switch
CC unwind.lo
CC mini-x86.lo
CC exceptions-x86.lo
In file included from ../../mono/os/gc_wrapper.h:38,
from ../../mono/metadata/gc-internal.h:14,
from exceptions-x86.c:21:
../../libgc/include/gc.h:1014: warning: function declaration isn't a prototype
exceptions-x86.c:829: warning: 'altstack_handle_and_restore' defined but not use
d
CC tramp-x86.lo
tramp-x86.c: In function `mono_arch_patch_callsite':
tramp-x86.c:84: warning: passing arg 1 of `InterlockedExchange' from incompatibl
e pointer type
tramp-x86.c:94: warning: passing arg 1 of `InterlockedExchange' from incompatibl
e pointer type
tramp-x86.c: In function `mono_arch_patch_plt_entry':
tramp-x86.c:109: warning: passing arg 1 of `InterlockedExchange' from incompatib
le pointer type
tramp-x86.c: In function `mono_arch_nullify_class_init_trampoline':
tramp-x86.c:134: warning: passing arg 1 of `InterlockedExchange' from incompatib
le pointer type
tramp-x86.c:143: warning: passing arg 1 of `InterlockedExchange' from incompatib
le pointer type
tramp-x86.c: In function `mono_arch_nullify_plt_entry':
tramp-x86.c:176: warning: passing arg 1 of `InterlockedExchange' from incompatib
le pointer type
tramp-x86.c:185: warning: passing arg 1 of `InterlockedExchange' from incompatib
le pointer type
LD libmono.la
.libs/mini-exceptions.o: In function `mono_print_thread_dump':
/download/mono/mono/mono/mini/mini-exceptions.c:1549: undefined reference to `_w
api_current_thread_desc'
Creating library file: .libs/libmono.dll.a
collect2: ld returned 1 exit status
make[4]: *** [libmono.la] Error 1
make[4]: Leaving directory `/download/mono/mono/mono/mini'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/download/mono/mono/mono/mini'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/download/mono/mono/mono'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/download/mono/mono'
make: *** [all] Error 2
===================================================

2nd time error and 3rd time error is frozen when MDOC    [net_2_0] cs-errors.tree
===================================================
Creating ../../build/deps/net_2_0_csharp.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/csharp'
make[7]: Entering directory `/download/mono/mcs/tools/csharp'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/csharp'
Creating ../../build/deps/csharp.exe.response ...
MCS     [net_2_0] csharp.exe
mv csharp.exe ./../../class/lib/net_2_0/csharp.exe
test ! -f csharp.exe.mdb || mv csharp.exe.mdb ./../../class/lib/net_2_0/csharp.
exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/csharp'
make[7]: Leaving directory `/download/mono/mcs/tools/csharp'
make[7]: Entering directory `/download/mono/mcs/tools/mono-xsd'
Creating ../../build/deps/net_2_0_xsd.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/mono-xsd'
make[7]: Entering directory `/download/mono/mcs/tools/mono-xsd'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/mono-xsd'
MCS     [net_2_0] xsd.exe
NewMonoXSD.cs(119,87): warning CS0618: `System.IO.Path.InvalidPathChars' is obs
olete: `see GetInvalidPathChars and GetInvalidFileNameChars methods.'
NewMonoXSD.cs(409,72): warning CS0618: `System.Xml.Schema.XmlSchema.Compile(Sys
tem.Xml.Schema.ValidationEventHandler)' is obsolete: `Use XmlSchemaSet.Compile(
) instead.'
NewMonoXSD.cs(436,55): warning CS0618: `System.CodeDom.Compiler.CodeDomProvider
.CreateGenerator()' is obsolete: `ICodeGenerator is obsolete'
NewMonoXSD.cs(470,55): warning CS0618: `System.CodeDom.Compiler.CodeDomProvider
.CreateGenerator()' is obsolete: `ICodeGenerator is obsolete'
NewMonoXSD.cs(472,47): warning CS0618: `System.Data.TypedDataSetGenerator' is o
bsolete: `TypedDataSetGenerator class will be removed in a future release. Plea
se use System.Data.Design.TypedDataSetGenerator in System.Design.dll.'
NewMonoXSD.cs(63,40): warning CS0414: The private field `Mono.Util.Driver.langu
ageNotSupported' is assigned but its value is never used
Compilation succeeded - 6 warning(s)
mv xsd.exe ./../../class/lib/net_2_0/xsd.exe
test ! -f xsd.exe.mdb || mv xsd.exe.mdb ./../../class/lib/net_2_0/xsd.exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/mono-xsd'
make[7]: Leaving directory `/download/mono/mcs/tools/mono-xsd'
make[7]: Entering directory `/download/mono/mcs/tools/wsdl'
Creating ../../build/deps/net_2_0_wsdl.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/wsdl'
make[7]: Entering directory `/download/mono/mcs/tools/wsdl'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/wsdl'
MCS     [net_2_0] wsdl.exe
MonoWSDL2.cs(179,42): warning CS0219: The variable `validationWarnings' is assi
gned but its value is never used
MonoWSDL2.cs(286,61): warning CS0618: `System.CodeDom.Compiler.CodeDomProvider.
CreateGenerator()' is obsolete: `ICodeGenerator is obsolete'
MonoWSDL2.cs(465,100): warning CS0618: `System.IO.Path.InvalidPathChars' is obs
olete: `see GetInvalidPathChars and GetInvalidFileNameChars methods.'
MonoWSDL2.cs(283,22): warning CS0169: The private method `Mono.WebServices.Driv
er.WriteCodeUnit(System.CodeDom.CodeCompileUnit, string)' is never used
Compilation succeeded - 4 warning(s)
mv wsdl.exe ./../../class/lib/net_2_0/wsdl.exe
test ! -f wsdl.exe.mdb || mv wsdl.exe.mdb ./../../class/lib/net_2_0/wsdl.exe.md
b
make[8]: Leaving directory `/download/mono/mcs/tools/wsdl'
make[7]: Leaving directory `/download/mono/mcs/tools/wsdl'
make[7]: Entering directory `/download/mono/mcs/tools/compiler-tester'
Creating ../../build/deps/net_2_0_compiler-tester.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/compiler-tester'
make[7]: Entering directory `/download/mono/mcs/tools/compiler-tester'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/compiler-tester'
MCS     [net_2_0] compiler-tester.exe
mv compiler-tester.exe ./../../class/lib/net_2_0/compiler-tester.exe
test ! -f compiler-tester.exe.mdb || mv compiler-tester.exe.mdb ./../../class/l
ib/net_2_0/compiler-tester.exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/compiler-tester'
make[7]: Leaving directory `/download/mono/mcs/tools/compiler-tester'
make[7]: Entering directory `/download/mono/mcs/tools/monop'
Creating ../../build/deps/net_2_0_monop.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/monop'
make[7]: Entering directory `/download/mono/mcs/tools/monop'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/monop'
MCS     [net_2_0] monop.exe
monop.cs(174,38): warning CS0612: `System.Reflection.Assembly.LoadWithPartialNa
me(string)' is obsolete
Compilation succeeded - 1 warning(s)
mv monop.exe ./../../class/lib/net_2_0/monop.exe
test ! -f monop.exe.mdb || mv monop.exe.mdb ./../../class/lib/net_2_0/monop.exe
.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/monop'
make[7]: Leaving directory `/download/mono/mcs/tools/monop'
make[7]: Entering directory `/download/mono/mcs/tools/xbuild'
Creating ../../build/deps/net_2_0_xbuild.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/xbuild'
make[7]: Entering directory `/download/mono/mcs/tools/xbuild'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/xbuild'
Creating ../../build/deps/xbuild.exe.response ...
MCS     [net_2_0] xbuild.exe
..\..\class\Microsoft.Build.Framework\Mono.XBuild.Framework\AssemblyLoadInfo.cs
(39,33): warning CS0649: Field `Mono.XBuild.Framework.AssemblyLoadInfo.assembly
NameString' is never assigned to, and will always have its default value `null'

Compilation succeeded - 1 warning(s)
make[8]: Leaving directory `/download/mono/mcs/tools/xbuild'
make[7]: Leaving directory `/download/mono/mcs/tools/xbuild'
make[7]: Entering directory `/download/mono/mcs/tools/resgen'
Creating ../../build/deps/net_2_0_resgen.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/resgen'
make[7]: Entering directory `/download/mono/mcs/tools/resgen'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/resgen'
MCS     [net_2_0] resgen.exe
mv resgen.exe ./../../class/lib/net_2_0/resgen.exe
test ! -f resgen.exe.mdb || mv resgen.exe.mdb ./../../class/lib/net_2_0/resgen.
exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/resgen'
make[7]: Leaving directory `/download/mono/mcs/tools/resgen'
make[7]: Entering directory `/download/mono/mcs/tools/mdoc'
Creating ../../build/deps/net_2_0_mdoc.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/mdoc'
make[7]: Entering directory `/download/mono/mcs/tools/mdoc'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/mdoc'
Creating ../../build/deps/mdoc.exe.response ...
MCS     [net_2_0] mdoc.exe
make[8]: Leaving directory `/download/mono/mcs/tools/mdoc'
make[7]: Leaving directory `/download/mono/mcs/tools/mdoc'
make[7]: Entering directory `/download/mono/mcs/tools/mono-service'
Creating ../../build/deps/net_2_0_mono-service.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/mono-service'
make[7]: Entering directory `/download/mono/mcs/tools/mono-service'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/mono-service'
MCS     [net_2_0] mono-service.exe
mono-service.cs(211,22): warning CS0169: The private method `MonoServiceRunner.
MainLoop(System.ServiceProcess.ServiceBase[])' is never used
Compilation succeeded - 1 warning(s)
mv mono-service.exe ./../../class/lib/net_2_0/mono-service.exe
test ! -f mono-service.exe.mdb || mv mono-service.exe.mdb ./../../class/lib/net
_2_0/mono-service.exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/mono-service'
make[7]: Leaving directory `/download/mono/mcs/tools/mono-service'
make[7]: Entering directory `/download/mono/mcs/tools/mono-shlib-cop'
Creating ../../build/deps/net_2_0_mono-shlib-cop.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/mono-shlib-cop'
make[7]: Entering directory `/download/mono/mcs/tools/mono-shlib-cop'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/mono-shlib-cop'
Creating ../../build/deps/mono-shlib-cop.exe.response ...
MCS     [net_2_0] mono-shlib-cop.exe
mono-shlib-cop.cs(253,46): warning CS0612: `System.Reflection.Assembly.LoadWith
PartialName(string)' is obsolete
Compilation succeeded - 1 warning(s)
make[8]: Leaving directory `/download/mono/mcs/tools/mono-shlib-cop'
make[7]: Leaving directory `/download/mono/mcs/tools/mono-shlib-cop'
make[7]: Entering directory `/download/mono/mcs/tools/mkbundle'
Creating ../../build/deps/net_2_0_mkbundle.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/mkbundle'
make[7]: Entering directory `/download/mono/mcs/tools/mkbundle'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/mkbundle'
MCS     [net_2_0] mkbundle.exe
mv mkbundle.exe ./../../class/lib/net_2_0/mkbundle.exe
test ! -f mkbundle.exe.mdb || mv mkbundle.exe.mdb ./../../class/lib/net_2_0/mkb
undle.exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/mkbundle'
make[7]: Leaving directory `/download/mono/mcs/tools/mkbundle'
make[7]: Entering directory `/download/mono/mcs/tools/sgen'
Creating ../../build/deps/net_2_0_sgen.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/sgen'
make[7]: Entering directory `/download/mono/mcs/tools/sgen'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/sgen'
Creating ../../build/deps/sgen.exe.response ...
MCS     [net_2_0] sgen.exe
sgen.cs(233,131): warning CS0618: `System.IO.Path.InvalidPathChars' is obsolete
: `see GetInvalidPathChars and GetInvalidFileNameChars methods.'
sgen.cs(32,14): warning CS0414: The private field `Driver.proxyTypes' is assign
ed but its value is never used
Compilation succeeded - 2 warning(s)
make[8]: Leaving directory `/download/mono/mcs/tools/sgen'
make[7]: Leaving directory `/download/mono/mcs/tools/sgen'
make[7]: Entering directory `/download/mono/mcs/tools/security'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/security'
MCS     [net_2_0] httpcfg.exe
make[8]: Leaving directory `/download/mono/mcs/tools/security'
make[7]: Leaving directory `/download/mono/mcs/tools/security'
make[7]: Entering directory `/download/mono/mcs/tools/mconfig'
Creating ../../build/deps/net_2_0_mconfig.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/mconfig'
make[7]: Entering directory `/download/mono/mcs/tools/mconfig'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/mconfig'
sed -e "s;@MONO_SYSCONFDIR@;C:/mono/Mono-1.2.1/etc;g" <>
cs.in > Mono.MonoConfig/consts.cs
Creating ../../build/deps/mconfig.exe.response ...
MCS     [net_2_0] mconfig.exe
mconfig.cs(78,31): warning CS0649: Field `Mono.MonoConfig.MConfigOptions.Config
File' is never assigned to, and will always have its default value `null'
Compilation succeeded - 1 warning(s)
make[8]: Leaving directory `/download/mono/mcs/tools/mconfig'
make[7]: Leaving directory `/download/mono/mcs/tools/mconfig'
make[7]: Entering directory `/download/mono/mcs/tools/installutil'
Creating ../../build/deps/net_2_0_installutil.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/installutil'
make[7]: Entering directory `/download/mono/mcs/tools/installutil'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/installutil'
make[8]: Nothing to be done for `all-local'.
make[8]: Leaving directory `/download/mono/mcs/tools/installutil'
make[7]: Leaving directory `/download/mono/mcs/tools/installutil'
make[7]: Entering directory `/download/mono/mcs/tools/nunitreport'
Creating ../../build/deps/net_2_0_nunitreport.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/nunitreport'
make[7]: Entering directory `/download/mono/mcs/tools/nunitreport'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/nunitreport'
Creating ../../build/deps/nunitreport.exe.response ...
MCS     [net_2_0] nunitreport.exe
make[8]: Leaving directory `/download/mono/mcs/tools/nunitreport'
make[7]: Leaving directory `/download/mono/mcs/tools/nunitreport'
make[7]: Entering directory `/download/mono/mcs/tools/sqlsharp'
Creating ../../build/deps/net_2_0_sqlsharp.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/sqlsharp'
make[7]: Entering directory `/download/mono/mcs/tools/sqlsharp'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/sqlsharp'
Creating ../../build/deps/sqlsharp.exe.response ...
MCS     [net_2_0] sqlsharp.exe
SqlSharpCli.cs(95,39): warning CS0219: The variable `column' is assigned but it
s value is never used
SqlSharpCli.cs(969,64): warning CS0168: The variable `e' is declared but never
used
SqlSharpCli.cs(919,34): warning CS0168: The variable `extp' is declared but nev
er used
Compilation succeeded - 3 warning(s)
make[8]: Leaving directory `/download/mono/mcs/tools/sqlsharp'
make[7]: Leaving directory `/download/mono/mcs/tools/sqlsharp'
make[7]: Entering directory `/download/mono/mcs/tools/gacutil'
Creating ../../build/deps/net_2_0_gacutil.exe.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/gacutil'
make[7]: Entering directory `/download/mono/mcs/tools/gacutil'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/gacutil'
MCS     [net_2_0] gacutil.exe
mv gacutil.exe ./../../class/lib/net_2_0/gacutil.exe
test ! -f gacutil.exe.mdb || mv gacutil.exe.mdb ./../../class/lib/net_2_0/gacut
il.exe.mdb
make[8]: Leaving directory `/download/mono/mcs/tools/gacutil'
make[7]: Leaving directory `/download/mono/mcs/tools/gacutil'
make[7]: Entering directory `/download/mono/mcs/tools/csharplib'
cat ../../mcs/gmcs.exe.sources | grep -v AssemblyInfo.cs  | sed -e 's,^,../../m
cs/,' -e 's,mcs/../,,' > Mono.CSharp.dll.sources
echo "../../mcs/cs-parser.cs" >> Mono.CSharp.dll.sources
echo sign.cs >> Mono.CSharp.dll.sources
Creating ../../build/deps/net_2_0_Mono.CSharp.dll.makefrag ...
make[7]: Leaving directory `/download/mono/mcs/tools/csharplib'
make[7]: Entering directory `/download/mono/mcs/tools/csharplib'
make all-local
make[8]: Entering directory `/download/mono/mcs/tools/csharplib'
Creating ../../build/deps/net_2_0_Mono.CSharp.dll.response ...
/bin/sh.exe ./../../mkinstalldirs fixup/net_2_0/
mkdir -p -- fixup/net_2_0/
touch fixup/net_2_0//.stamp
MCS     [net_2_0] Mono.CSharp.dll
..\..\mcs\support.cs(176,25): warning CS0618: `System.Collections.Hashtable.com
parer' is obsolete: `Please use EqualityComparer property.'
Compilation succeeded - 1 warning(s)
Assembly fixup/net_2_0/Mono.CSharp.dll signed.
/bin/sh.exe ./../../mkinstalldirs fixup
MONO_PATH="./../../class/lib/net_2_0;./../../class/lib/net_1_1;$MONO_PATH" /dow
nload/mono/mono/runtime/mono-wrapper ./../../class/lib/net_1_1/monolinker.exe -
d fixup/net_2_0 -o out -l none -c skip -b true -x link.xml -s Mono.Tuner.Adjust
Visibility,Mono.Tuner:OutputStep -s Mono.Tuner.PrintStatus,Mono.Tuner:OutputSte
p  -i compiler.info
Assembly `Mono.CSharp, Version=2.1.0.0, Culture=neutral, PublicKeyToken=0738eb9
f132ed756' (C:\cygwin\download\mono\mcs\tools\csharplib\fixup\net_2_0\Mono.CSha
rp.dll) tuned
Assembly out/Mono.CSharp.dll signed.
cp out/Mono.CSharp.dll ./../../class/lib/net_2_0/Mono.CSharp.dll
make[8]: Leaving directory `/download/mono/mcs/tools/csharplib'
make[7]: Leaving directory `/download/mono/mcs/tools/csharplib'
make all-local
make[7]: Entering directory `/download/mono/mcs/tools'
make[7]: Leaving directory `/download/mono/mcs/tools'
make[6]: Leaving directory `/download/mono/mcs/tools'
make[6]: Entering directory `/download/mono/mcs/tests'
make all-local
make[7]: Entering directory `/download/mono/mcs/tests'
make[7]: Nothing to be done for `all-local'.
make[7]: Leaving directory `/download/mono/mcs/tests'
make[6]: Leaving directory `/download/mono/mcs/tests'
make[6]: Entering directory `/download/mono/mcs/errors'
make all-local
make[7]: Entering directory `/download/mono/mcs/errors'
make[7]: Nothing to be done for `all-local'.
make[7]: Leaving directory `/download/mono/mcs/errors'
make[6]: Leaving directory `/download/mono/mcs/errors'
make[6]: Entering directory `/download/mono/mcs/docs'
make all-local
make[7]: Entering directory `/download/mono/mcs/docs'
MDOC    [net_2_0] cs-errors.tree
===================================================
I consult the solution from Internet.
Test 1:
  • Mono-1.2.1 and svn 124359, others is the same.
  • Input ./autogen.sh --with-moonlight=no --prefix=C:/mono/Mono-1.2.1 --with-preview=yes
The same problem occurs.
Test 2:
  • Mono-1.2.1 and svn 124359, others is the same.
  • Input ./autogen.sh --with-moonlight=no --prefix=C:/mono/Mono-1.2.1 --with-preview=yes
  • Remove all lines with occurrence of "docs" that means mark the lines. There are two lines with docs
======================================
line 3 #SUBDIRS := build jay mcs class nunit24 ilasm tools tests errors docs
line 8 #net_2_0_SUBDIRS := build jay mcs class nunit24 ilasm tools tests errors docs
======================================
Then coming out an error messages like following,
I need new mscorlib.dll and mcs.exe C# compiler and some related *.dll.
System tell me to download then from http://mono.ximian.com/daily/
I download the MonoLite and extract them to C:\mono\Mono-1.2.1\lib\mono\1.0
Then make again. Good news is 0 error.
Then make install....
SUCCESFUL INSTALLATION!!!!
The final message is following,
---------------------------------------------------------
 /usr/bin/install -c -m 644 'mono-tools.tree' 'C:/mono/Mono-1.2.1/lib/monodoc/s
ources/mono-tools.tree'
 /usr/bin/install -c -m 644 'mono-tools.zip' 'C:/mono/Mono-1.2.1/lib/monodoc/so
urces/mono-tools.zip'
 /usr/bin/install -c -m 644 'monoapi.tree' 'C:/mono/Mono-1.2.1/lib/monodoc/sour
ces/monoapi.tree'
 /usr/bin/install -c -m 644 'monoapi.zip' 'C:/mono/Mono-1.2.1/lib/monodoc/sourc
es/monoapi.zip'
make[2]: Leaving directory `/download/mono/mono/docs'
make[1]: Leaving directory `/download/mono/mono/docs'
make[1]: Entering directory `/download/mono/mono'
make[2]: Entering directory `/download/mono/mono'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/download/mono/mono'
make[1]: Leaving directory `/download/mono/mono'
---------------------------------------------------------
The same with the screen in Sockey article.

Then type "mono --version", will get
---------------------------------------------------------
$ mono --version
Mono JIT compiler version 2.3 (tarball)
Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.com
        TLS:           normal
        GC:            Included Boehm (with typed GC and Parallel Mark)
        SIGSEGV:       normal
        Notification:  Thread + polling
        Architecture:  x86
        Disabled:      none
---------------------------------------------------------
Test 3:
  • Mono-2.2 and svn 124382, others is the same.
  • Input ./autogen.sh --with-moonlight=no --prefix=C:/mono/Mono-2.2 --with-preview=yes
  • Remove all lines with occurrence of "docs" that means mark the lines. There are two lines with docs
But I get an error of following,
===================================================
make[7]: Entering directory `/download/mono/mcs/build'
make[7]: Leaving directory `/download/mono/mcs/build'
make[6]: Leaving directory `/download/mono/mcs/build'
make[6]: Entering directory `/download/mono/mcs/jay'
make all-local
make[7]: Entering directory `/download/mono/mcs/jay'
make[7]: Nothing to be done for `all-local'.
make[7]: Leaving directory `/download/mono/mcs/jay'
make[6]: Leaving directory `/download/mono/mcs/jay'
make[6]: Entering directory `/download/mono/mcs/mcs'
make all-local
make[7]: Entering directory `/download/mono/mcs/mcs'
make[7]: *** No rule to make target `../class/lib/net_1_1/mcs.exe', needed by `.
./class/lib/net_2_0_bootstrap/gmcs.exe'.  Stop.
make[7]: Leaving directory `/download/mono/mcs/mcs'
make[6]: *** [do-all] Error 2
make[6]: Leaving directory `/download/mono/mcs/mcs'
make[5]: *** [all-recursive] Error 1
make[5]: Leaving directory `/download/mono/mcs'
make[4]: *** [profile-do--net_2_0_bootstrap--all] Error 2
make[4]: Leaving directory `/download/mono/mcs'
make[3]: *** [profiles-do--all] Error 2
make[3]: Leaving directory `/download/mono/mcs'
make[2]: *** [all-local] Error 2
make[2]: Leaving directory `/download/mono/mono/runtime'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/download/mono/mono'
make: *** [all] Error 2
===================================================

3 comments:

Unknown said...
This comment has been removed by the author.
Unknown said...
This comment has been removed by the author.
Unknown said...

Actually, I think I am still failure with installing MONO on Cygwin.
When I tried to install monodevelop, the error messages show a lot of libraries liking failed.
So I give up. At least, I get more familiar with Cygwin.
At present, I think the LiveCD of openSUSE with Mono is the most easy way to get mono and monodevelop.

Clicky

Clicky Web Analytics