[Mono-list] Compiling mcs under Linux

Kristian Rietveld kris@gtk.org
03 Jan 2002 00:02:05 +0100


Hi all,

Yesterday, I tried to compile mcs with csc.exe under Linux, using wine.
And it worked! I don't know if it generates a correct binary (it
probably does).

I used wineX (http://www.sf.net/projects/winex/) (which I actually
compiled and installed in the hope to play games, but that doesn't work
that well ;), which runs csc without problems.

Wine was also able to run C# Hello World. But it couldn't run NAnt. So,
my next goal is getting NAnt to work, after that getting NAnt to use csc
using wine so I can compile the class libraries under Linux.


regards,


	Kris


kris@beast:~/mono-cvsroot/mcs/mcs$ cvs -z5 diff -u makefile 
Index: makefile
===================================================================
RCS file: /mono/mcs/mcs/makefile,v
retrieving revision 1.34
diff -u -r1.34 makefile
--- makefile	19 Dec 2001 20:09:13 -0000	1.34
+++ makefile	2 Jan 2002 22:38:00 -0000
@@ -1,5 +1,6 @@
-ROOT=/cygdrive/$(subst \,/,$(subst :\,/,$(SYSTEMROOT)))
-CSC=$(ROOT)/microsoft.net/framework/v1.0.2914/csc.exe
+#ROOT=/cygdrive/$(subst \,/,$(subst :\,/,$(SYSTEMROOT)))
+#CSC=$(ROOT)/microsoft.net/framework/v1.0.2914/csc.exe
+CSC=wine -- C:\\windows\\microsoft.net\\framework\\v1.0.2914\\csc.exe
 CSCFLAGS=/nologo /debug+ /debug:full  /optimize /unsafe
 
 VERSION=0.13
kris@beast:~/mono-cvsroot/mcs/mcs$ make
../jay/jay -ctv < ../jay/skeleton.cs cs-parser.jay > cs-parser.cs
../jay/jay: 2 rules never reduced
../jay/jay: 16 shift/reduce conflicts, 1 reduce/reduce conflict.
wine -- C:\\windows\\microsoft.net\\framework\\v1.0.2914\\csc.exe
/nologo /debug+ /debug:full  /optimize /unsafe /target:exe /r:System.dll
/out:mcs.exe assign.cs driver.cs cs-parser.cs cs-tokenizer.cs tree.cs
location.cs class.cs delegate.cs attribute.cs codegen.cs const.cs
constant.cs decl.cs enum.cs ecore.cs expression.cs genericparser.cs
interface.cs literal.cs modifiers.cs namespace.cs parameter.cs report.cs
rootcontext.cs statement.cs statementCollection.cs support.cs
typemanager.cs
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
VNETBIOS
fixme:win32:DeviceIoControl Unimplemented control 256 for VxD device
NWLINK
fixme:advapi:CryptAcquireContextA (0x406f123c, (null), (null), 1,
f0000000): stub!
fixme:console:SetConsoleCtrlHandler (0x60b14fdb,1) - no error checking
or testing yet
fixme:win32:PE_CreateModule Unknown directory 14 ignored
err:shell:SHGetSpecialFolderPathA folder unknown or not allowed
err:virtual:VirtualFree called with wrong free type flags (00014000) !
kris@beast:~/mono-cvsroot/mcs/mcs$ ls -la mcs.exe
-rwxrwxr-x    1 kris     kris       356352 Jan  2 23:42 mcs.exe