2002-02-12 01:18:46 +03:00
|
|
|
.TH mcs 1 "6 January 2001"
|
|
|
|
.SH NAME
|
2007-07-11 21:35:43 +04:00
|
|
|
mcs, gmcs, smcs \- Mono C# Compiler (1.0, 2.0, Moonlight)
|
2002-02-12 01:18:46 +03:00
|
|
|
.SH SYNOPSIS
|
|
|
|
.B mcs
|
|
|
|
[option] [source-files]
|
|
|
|
.SH DESCRIPTION
|
|
|
|
mcs is the Mono C# compiler, an implementation of the ECMA-334
|
2002-03-25 01:42:33 +03:00
|
|
|
language specification. You can pass one or more options to drive the
|
2002-02-12 01:18:46 +03:00
|
|
|
compiler, and a set of source files. Extra options or arguments can
|
|
|
|
be provided in a response file. Response files are referenced by
|
|
|
|
prepending the @ symbol to the response file name.
|
|
|
|
.PP
|
2005-10-08 01:25:44 +04:00
|
|
|
The
|
|
|
|
.I mcs
|
|
|
|
compiler is used to compile against the 1.x profile and implements
|
2007-07-11 20:06:48 +04:00
|
|
|
C# 1.0 and 2.0 with the exception of generics and nullable types.
|
|
|
|
.PP
|
|
|
|
The
|
2005-10-08 01:25:44 +04:00
|
|
|
.I gmcs
|
2007-07-11 20:06:48 +04:00
|
|
|
compiler is used to compile against the 2.0 profile and implements
|
2006-10-06 15:41:28 +04:00
|
|
|
the complete C# 2.0 specification including generics.
|
2005-10-08 01:25:44 +04:00
|
|
|
.PP
|
2007-07-11 20:06:48 +04:00
|
|
|
The
|
|
|
|
.I smcs
|
2007-07-11 21:35:43 +04:00
|
|
|
compiler is used to compile against the Silverlight/Moonlight profile.
|
|
|
|
This profile is designed to be used for creating Silverlight/Moonlight
|
|
|
|
applications that will run on a web browser. The API exposed by this
|
|
|
|
profile is a small subset of the 2.0 API (even if it is commonly
|
|
|
|
referred as the 2.1 API, this API is a small subset of 2.0 with a few
|
2007-07-29 19:55:19 +04:00
|
|
|
extensions), in addition this profile by default runs with
|
|
|
|
-langversion:linq which turns on the C# 3.0 language by default.
|
2007-07-11 20:06:48 +04:00
|
|
|
.PP
|
2007-01-01 07:26:28 +03:00
|
|
|
The Mono C# compiler accepts the same command line options that the
|
|
|
|
Microsoft C# compiler does. Those options can start with a slash or a
|
|
|
|
dash (/checked is the same as -checked). Additionally some GNU-like
|
|
|
|
options are supported, those begin with "--". All MCS-specific flags
|
|
|
|
which are not available in the Microsoft C# compiler are available
|
|
|
|
only with the GNU-style options.
|
2002-08-03 01:21:10 +04:00
|
|
|
.PP
|
2002-02-12 01:18:46 +03:00
|
|
|
C# source files must end with a ".cs" extension. Compilation of C#
|
|
|
|
source code requires all the files that make up a library, module or
|
|
|
|
executable to be provided on the command line. There is no support
|
|
|
|
for partial compilation. To achieve the benefits of partial
|
|
|
|
compilation, you should compile programs into their own assemblies,
|
|
|
|
and later reference them with the "-r" flag.
|
|
|
|
.PP
|
|
|
|
The Mono C# compiler generates images (.exe files) that contain CIL
|
|
|
|
byte code that can be executed by any system that implements a Common
|
|
|
|
Language Infrastructure virtual machine such as the Microsoft .NET
|
|
|
|
runtime engine on Windows or the Mono runtime engine on Unix systems.
|
|
|
|
Executables are not bound to a specific CPU or operating system.
|
|
|
|
.PP
|
2005-09-29 21:45:05 +04:00
|
|
|
The Mono C# compiler by default only references three assemblies:
|
|
|
|
mscorlib.dll, System.dll and System.Xml.dll. If you want to
|
|
|
|
reference extra libraries you must manually specify them using the
|
|
|
|
-pkg: command line option or the -r: command line option.
|
|
|
|
Alternatively if you want to get all of the System libraries, you can
|
|
|
|
use the -pkg:dotnet command line option.
|
|
|
|
.PP
|
2002-02-12 01:18:46 +03:00
|
|
|
.SH OPTIONS
|
|
|
|
.TP
|
|
|
|
.I \-\-about
|
|
|
|
Displays information about the Mono C# compiler
|
|
|
|
.TP
|
2003-12-21 22:22:46 +03:00
|
|
|
.I \-\-addmodule:MODULE1[,MODULE2]
|
|
|
|
Includes the specified modules in the resulting assembly.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I -checked, -checked+
|
2002-02-12 01:18:46 +03:00
|
|
|
Sets the default compilation mode to `checked'. This makes all
|
|
|
|
the math operations checked (the default is unchecked).
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I -checked-
|
|
|
|
Sets the default compilation mode to `unchecked'. This makes all
|
|
|
|
the math operations unchecked (this is the default).
|
|
|
|
.TP
|
2002-09-07 04:17:40 +04:00
|
|
|
.I -codepage:ID
|
|
|
|
Specifies the code page used to process the input files from the
|
|
|
|
point it is specified on. By default files will be processed in the
|
2007-07-05 09:36:19 +04:00
|
|
|
environment-dependent native code page. The compiler will also automatically
|
|
|
|
detect Unicode files that have an embedded byte mark at the beginning.
|
2007-04-22 21:07:34 +04:00
|
|
|
.Sp
|
2005-09-27 20:43:19 +04:00
|
|
|
Other popular encodings are 28591 (Latin1), 1252 (iso-8859-1) and 65001 (UTF-8).
|
2007-04-22 21:07:34 +04:00
|
|
|
.Sp
|
2005-09-27 20:43:19 +04:00
|
|
|
MCS supports a couple of shorthands: "utf8" can be used to specify utf-8 instead
|
|
|
|
of using the cryptic 65001 and "reset" restores the automatic handling of
|
|
|
|
code pages. These shorthands are not available on the Microsoft compiler.
|
2005-09-27 20:25:43 +04:00
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-define:SYMLIST, -d:SYMLIST
|
2007-01-01 07:26:28 +03:00
|
|
|
Defines the symbol listed by the semi-colon separated list SYMLIST
|
2002-08-03 01:21:10 +04:00
|
|
|
SYMBOL. This can be tested in the source code by the pre-processor,
|
|
|
|
or can be used by methods that have been tagged with the Conditional
|
|
|
|
attribute.
|
2002-03-24 22:12:57 +03:00
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-debug, \-debug+, \-g
|
2003-04-03 07:22:31 +04:00
|
|
|
Generate debugging information. To obtain stack traces with debugging
|
|
|
|
information, you need to invoke the mono runtime with the `--debug'
|
|
|
|
flag. This debugging information is stored inside the assembly as a
|
|
|
|
resource.
|
2002-02-12 01:18:46 +03:00
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-debug-
|
|
|
|
Do not generate debugging information.
|
|
|
|
.TP
|
2004-03-25 15:46:03 +03:00
|
|
|
.I \-delaysign+
|
|
|
|
Only embed the strongname public key into the assembly. The actual
|
|
|
|
signing must be done in a later stage using the SN tool. This is useful
|
|
|
|
to protect the private key during development. Note that delay signing
|
|
|
|
can only be done using a strongname key file (not a key container). The
|
|
|
|
option is equivalent to including [assembly: AssemblyDelaySign (true)]
|
|
|
|
in your source code. Compiler option takes precedence over the
|
|
|
|
attributes.
|
|
|
|
.TP
|
|
|
|
.I \-delaysign-
|
|
|
|
Default. Strongname (sign) the assembly using the strong name key file
|
|
|
|
(or container). The option is equivalent to including [assembly:
|
|
|
|
AssemblyDelaySign (false)] in your source code. Compiler option takes
|
|
|
|
precedence over the attributes.
|
|
|
|
.TP
|
2005-05-05 19:11:25 +04:00
|
|
|
.I \-doc:FILE
|
|
|
|
Extracts the C#/XML documentation from the source code and stores in in
|
|
|
|
the given FILE.
|
|
|
|
.TP
|
2002-09-15 20:13:31 +04:00
|
|
|
.I \-\-expect-error X L
|
|
|
|
The compiler will expect the code to generate an error
|
|
|
|
named `X' in line `L'. This is only used by the test suite.
|
|
|
|
.TP
|
2002-02-12 01:18:46 +03:00
|
|
|
.I \-\-fatal
|
|
|
|
This is used for debugging the compiler. This makes the error emission
|
|
|
|
generate an exception that can be caught by a debugger.
|
|
|
|
.TP
|
2004-03-25 15:46:03 +03:00
|
|
|
.I \-keyfile:KEYFILE
|
|
|
|
Strongname (sign) the output assembly using the key pair present in
|
|
|
|
the specified strong name key file (snk). A full key pair is required
|
|
|
|
by default (or when using delaysign-). A file containing only the
|
|
|
|
public key can be used with delaysign+. The option is equivalent to
|
|
|
|
including [assembly: AssemblyKeyFile ("KEYFILE")] in your source code.
|
|
|
|
Compiler option takes precedence over the attributes.
|
|
|
|
.TP
|
|
|
|
.I \-keycontainer:CONTAINER
|
|
|
|
Strongname (sign) the output assembly using the key pair present in
|
|
|
|
the specified container. Note that delaysign+ is ignored when using
|
|
|
|
key containers. The option is equivalent to including [assembly:
|
|
|
|
AssemblyKeyName ("CONTAINER")] in your source code. Compiler option
|
|
|
|
takes precedence over the attributes.
|
|
|
|
.TP
|
2004-09-09 12:55:20 +04:00
|
|
|
.I \-langversion:TEXT
|
|
|
|
The option specifies the version of the language to use. The feature
|
|
|
|
set is different in each C# version. This switch can be used to force
|
|
|
|
the compiler to allow only a subset of the features.
|
|
|
|
The possible values are:
|
2007-04-25 05:36:43 +04:00
|
|
|
.RS
|
|
|
|
.ne 8
|
|
|
|
.TP
|
|
|
|
.I "Default"
|
|
|
|
Instruct compiler to use the latest version. Equivalent is to omit the
|
|
|
|
switch (this currently defaults to the C# 2.0 language specification).
|
|
|
|
.TP
|
|
|
|
.I "ISO-1"
|
2007-10-09 00:57:18 +04:00
|
|
|
Restrict compiler to use only first ISO standardized features.
|
2004-09-09 12:55:20 +04:00
|
|
|
The usage of features such as generics, static classes, anonymous
|
|
|
|
methods will lead to error.
|
2007-04-25 05:36:43 +04:00
|
|
|
.TP
|
2007-10-09 00:57:18 +04:00
|
|
|
.I "ISO-2"
|
|
|
|
Restrict compiler to use only the second ISO standardized features.
|
|
|
|
This allows the use of generics, static classes, iterators and
|
|
|
|
anonymous methods for example.
|
|
|
|
.TP
|
2007-04-25 05:36:43 +04:00
|
|
|
.I "linq"
|
|
|
|
This enables the C# 3.0 support. Only a few features of C# 3.0 have
|
|
|
|
been implemented in the Mono C# compiler, so not everything is
|
|
|
|
available.
|
|
|
|
.PP
|
2006-02-10 20:23:18 +03:00
|
|
|
Notice that this flag only controls the language features available to
|
|
|
|
the programmer, it does not control the kind of assemblies produced.
|
|
|
|
Programs compiled with mcs will reference the 1.1 APIs, Programs
|
|
|
|
compiled with gmcs reference the 2.0 APIs.
|
2007-04-25 05:36:43 +04:00
|
|
|
.ne
|
|
|
|
.RE
|
2004-09-09 12:55:20 +04:00
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I -lib:PATHLIST
|
|
|
|
Each path specified in the comma-separated list will direct the
|
|
|
|
compiler to look for libraries in that specified path.
|
|
|
|
.TP
|
2002-02-12 01:18:46 +03:00
|
|
|
.I \-L PATH
|
|
|
|
Directs the compiler to look for libraries in the specified path.
|
2002-08-03 01:21:10 +04:00
|
|
|
Multiple paths can be provided by using the option multiple times.
|
2002-02-12 01:18:46 +03:00
|
|
|
.TP
|
2004-04-22 21:08:18 +04:00
|
|
|
.I \-main:CLASS
|
|
|
|
Tells the compiler which CLASS contains the entry point. Useful when
|
|
|
|
you are compiling several classes with a Main method.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-nostdlib, -nostdlib+
|
2002-02-12 01:18:46 +03:00
|
|
|
Use this flag if you want to compile the core library. This makes the
|
|
|
|
compiler load its internal types from the assembly being compiled.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-noconfig, \-noconfig+
|
2002-03-20 00:03:15 +03:00
|
|
|
Disables the default compiler configuration to be loaded. The
|
|
|
|
compiler by default has references to the system assemblies.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-nowarn:WARNLIST
|
2007-01-01 07:26:28 +03:00
|
|
|
Makes the compiler ignore warnings specified in the comma-separated
|
2002-08-03 01:21:10 +04:00
|
|
|
list WARNLIST>
|
2002-02-12 01:18:46 +03:00
|
|
|
.TP
|
2005-02-18 21:06:02 +03:00
|
|
|
.I -optimize, -optimize+, -optimize-
|
|
|
|
Controls whether to perform optimizations on the code. -optimize and
|
|
|
|
-optimize+ will turn on optimizations, -optimize- will turn it off.
|
|
|
|
The default in mcs is to optimize+.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I -out:FNAME, -o FNAME
|
2002-02-12 01:18:46 +03:00
|
|
|
Names the output file to be generated.
|
|
|
|
.TP
|
|
|
|
.I \-\-parse
|
|
|
|
Used for benchmarking. The compiler will only parse its input files.
|
|
|
|
.TP
|
2004-05-14 00:24:49 +04:00
|
|
|
.I \-pkg:package1[,packageN]
|
2007-05-10 23:34:46 +04:00
|
|
|
Reference assemblies for the given packages.
|
|
|
|
.Sp
|
2004-05-14 00:24:49 +04:00
|
|
|
The compiler will invoke pkg-config --libs on the set of packages
|
|
|
|
specified on the command line to obtain libraries and directories to
|
|
|
|
compile the code.
|
2007-04-22 21:07:34 +04:00
|
|
|
.Sp
|
2004-05-14 00:24:49 +04:00
|
|
|
This is typically used with third party components, like this:
|
|
|
|
.nf
|
2007-07-11 21:35:43 +04:00
|
|
|
|
2004-05-14 00:24:49 +04:00
|
|
|
$ mcs -pkg:gtk-sharp demo.cs
|
|
|
|
.fi
|
2007-07-11 21:35:43 +04:00
|
|
|
.RS
|
|
|
|
.ne 8
|
2005-08-31 17:53:35 +04:00
|
|
|
.TP
|
|
|
|
.I \-pkg:dotnet
|
|
|
|
This will instruct the compiler to reference the System.* libraries
|
|
|
|
available on a typical dotnet framework installation, notice that this
|
2007-01-01 07:26:28 +03:00
|
|
|
does not include all of the Mono libraries, only the System.* ones. This
|
2005-08-31 17:53:35 +04:00
|
|
|
is a convenient shortcut for those porting code.
|
2005-09-26 08:08:28 +04:00
|
|
|
.TP
|
2007-05-10 23:34:46 +04:00
|
|
|
.I \-pkg:olive
|
2007-07-11 21:35:43 +04:00
|
|
|
Use this to reference the "Olive" libraries (the 3.0 and 3.5 extended
|
|
|
|
libraries).
|
|
|
|
.TP
|
|
|
|
.I \-pkg:silver
|
|
|
|
References the assemblies for creating Moonlight/Silverlight
|
|
|
|
applications. This is automatically used when using the
|
|
|
|
.I smcs
|
|
|
|
compiler, but it is here when developers want to use it with the
|
|
|
|
.I gmcs
|
|
|
|
compiler.
|
|
|
|
.TP
|
|
|
|
.I \-pkg:silverdesktop
|
|
|
|
Use this option to create Moonlight/Silverlight applications that
|
|
|
|
target the desktop. This option allows developers to consume the
|
|
|
|
Silverlight APIs with the full 2.0 profile API available to them,
|
|
|
|
unlike
|
|
|
|
.I smcs
|
|
|
|
it gives full access to all the APIs that are part of Mono. The only
|
|
|
|
downside is that applications created with silverdesktop will not run
|
|
|
|
on the browser. Typically these applications will be launched
|
|
|
|
with the
|
|
|
|
.I mopen
|
|
|
|
command line tool.
|
|
|
|
.ne
|
|
|
|
.RE
|
2007-05-10 23:34:46 +04:00
|
|
|
.TP
|
2002-10-24 20:11:56 +04:00
|
|
|
.I -resource:RESOURCE[,ID]
|
2002-09-18 01:23:51 +04:00
|
|
|
Embeds to the given resource file. The optional ID can be used to
|
|
|
|
give a different name to the resource. If not specified, the resource
|
|
|
|
name will be the file name.
|
|
|
|
.TP
|
2002-10-24 20:11:56 +04:00
|
|
|
.I -linkresource:RESOURCE[,ID]
|
2002-09-18 01:23:51 +04:00
|
|
|
Links to the specified RESOURCE. The optional ID can be used to give
|
|
|
|
a name to the linked resource.
|
2002-02-12 01:18:46 +03:00
|
|
|
.TP
|
2004-01-09 17:07:45 +03:00
|
|
|
.I -r:ASSEMBLY1[,ASSEMBLY2], \-r ASSEMBLY1[,ASSEMBLY2]
|
|
|
|
Reference the named assemblies. Use this to use classes from the named
|
|
|
|
assembly in your program. The assembly will be loaded from either the
|
|
|
|
system directory where all the assemblies live, or from the path
|
|
|
|
explicitly given with the -L option.
|
|
|
|
.PP
|
|
|
|
You can also use a semicolon to separate the assemblies instead of a
|
|
|
|
comma.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-recurse:PATTERN, --recurse PATTERN
|
2002-03-19 06:27:36 +03:00
|
|
|
Does recursive compilation using the specified pattern. In Unix the
|
2007-01-01 07:26:28 +03:00
|
|
|
shell will perform globbing, so you might want to use it like this:
|
2002-03-19 06:27:36 +03:00
|
|
|
.PP
|
|
|
|
.nf
|
2004-05-14 00:24:49 +04:00
|
|
|
$ mcs -recurse:'*.cs'
|
2002-03-19 06:27:36 +03:00
|
|
|
.fi
|
|
|
|
.TP
|
2004-05-14 00:24:49 +04:00
|
|
|
.I \-\-stacktrace
|
|
|
|
Generates a stack trace at the time the error is reported, useful for
|
|
|
|
debugging the compiler.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-target:KIND, \-t:KIND
|
2003-12-21 22:22:46 +03:00
|
|
|
Used to specify the desired target. The possible values are: exe
|
|
|
|
(plain executable), winexe (Windows.Forms executable), library
|
|
|
|
(component libraries) and module (partial library).
|
2002-02-12 01:18:46 +03:00
|
|
|
.TP
|
|
|
|
.I \-\-timestamp
|
|
|
|
Another debugging flag. Used to display the times at various points
|
|
|
|
in the compilation process.
|
|
|
|
.TP
|
2002-08-03 01:21:10 +04:00
|
|
|
.I \-unsafe, -unsafe+
|
2002-02-12 01:18:46 +03:00
|
|
|
Enables compilation of unsafe code.
|
|
|
|
.TP
|
|
|
|
.I \-v
|
|
|
|
Debugging. Turns on verbose yacc parsing.
|
2002-02-22 20:22:17 +03:00
|
|
|
.TP
|
2003-04-22 09:26:15 +04:00
|
|
|
.I \-v2
|
|
|
|
Turns on C# 2.0 language features.
|
|
|
|
.TP
|
|
|
|
.I \-\-version
|
|
|
|
Shows the compiler version.
|
|
|
|
.TP
|
2004-01-09 17:07:45 +03:00
|
|
|
.I \-warnaserror, \-warnaserror+
|
|
|
|
Treat warnings as errors.
|
|
|
|
.TP
|
|
|
|
.I \-warn:LEVEL
|
|
|
|
Sets the warning level. 0 is the lowest warning level, and 4 is the
|
|
|
|
highest. The default is 2.
|
|
|
|
.TP
|
|
|
|
.I \-win32res:FILE
|
|
|
|
Specifies a Win32 resource file (.res) to be bundled into the
|
|
|
|
resulting assembly.
|
|
|
|
.TP
|
|
|
|
.I \-win32icon:FILE
|
|
|
|
Attaches the icon specified in FILE on the output into the resulting
|
|
|
|
assembly.
|
|
|
|
.TP
|
2002-02-22 20:22:17 +03:00
|
|
|
.I \-\-
|
|
|
|
Use this to stop option parsing, and allow option-looking parameters
|
|
|
|
to be passed on the command line.
|
2002-02-12 01:18:46 +03:00
|
|
|
.PP
|
2002-05-27 19:21:24 +04:00
|
|
|
.SH SPECIAL DEFINES
|
|
|
|
The
|
|
|
|
.B TRACE
|
|
|
|
and
|
|
|
|
.B DEBUG
|
|
|
|
defines have a special meaning to the compiler.
|
|
|
|
.PP
|
|
|
|
By default calls to methods and properties in the
|
|
|
|
System.Diagnostics.Trace class are not generated unless the TRACE
|
|
|
|
symbol is defined (either through a "#define TRACE") in your source
|
|
|
|
code, or by using the
|
|
|
|
.I "--define TRACE"
|
|
|
|
in the command line.
|
|
|
|
.PP
|
|
|
|
By default calls to methods and properties in the
|
|
|
|
System.Diagnostics.Debug class are not generated unless the DEBUG
|
|
|
|
symbol is defined (either through a "#define DEBUG") in your source
|
|
|
|
code, or by using the
|
|
|
|
.I "--define DEBUG"
|
|
|
|
in the command line.
|
|
|
|
.PP
|
|
|
|
Note that the effect of defining TRACE and DEBUG is a global setting,
|
|
|
|
even if they are only defined in a single file.
|
|
|
|
.PP
|
2002-03-24 22:12:57 +03:00
|
|
|
.SH DEBUGGING SUPPORT
|
2007-07-11 21:35:43 +04:00
|
|
|
When using the "-debug" flag, MCS will generate a file with the
|
|
|
|
extension .mdb that contains the debugging information for the
|
|
|
|
generated assembly. This file is consumed by the Mono debugger (mdb).
|
2007-12-22 01:18:40 +03:00
|
|
|
.SH ENVIRONMENT VARIABLES
|
|
|
|
.TP
|
|
|
|
.I "MCS_COLORS"
|
|
|
|
If this variable is set, it contains a string in the form
|
|
|
|
"foreground,background" that specifies which color to use to display
|
|
|
|
errors on some terminals.
|
|
|
|
.Sp
|
|
|
|
The background is optional and defaults to your terminal current
|
|
|
|
background. The possible colors for foreground are:
|
|
|
|
.B black, red, brightred, green, brightgreen, yellow, brightyellow,
|
|
|
|
blue, brightblue, magenta, brightmagenta, cyan, brightcyan, grey,
|
|
|
|
white and brightwhite.
|
|
|
|
.Sp
|
|
|
|
The possible colors for background are: black, red, green, yellow,
|
|
|
|
blue, magenta, cyan, grey and white.
|
|
|
|
.Sp
|
|
|
|
For example, you could set these variable from your shell:
|
|
|
|
.nf
|
|
|
|
export MCS_COLORS
|
|
|
|
MCS_COLORS=brightwhite,red
|
|
|
|
.fi
|
|
|
|
.Sp
|
|
|
|
You can disable the built-in color scheme by setting this variable to
|
|
|
|
"disable".
|
2002-02-21 05:34:18 +03:00
|
|
|
.SH NOTES
|
|
|
|
During compilation the MCS compiler defines the __MonoCS__ symbol,
|
|
|
|
this can be used by pre-processor instructions to compile Mono C#
|
2003-09-14 04:18:07 +04:00
|
|
|
compiler specific code. Please note that this symbol is only to test
|
|
|
|
for the compiler, and is not useful to distinguish compilation or
|
2007-07-11 21:35:43 +04:00
|
|
|
deployment platforms.
|
2002-02-12 01:18:46 +03:00
|
|
|
.SH AUTHORS
|
2007-01-01 07:26:28 +03:00
|
|
|
The Mono C# Compiler was written by Miguel de Icaza, Ravi Pratap,
|
|
|
|
Martin Baulig, Marek Safar and Raja Harinath. The development was
|
|
|
|
funded by Ximian, Novell and Marek Safar.
|
2002-02-12 01:18:46 +03:00
|
|
|
.PP
|
|
|
|
.SH LICENSE
|
|
|
|
The Mono Compiler Suite is released under the terms of the GNU GPL.
|
|
|
|
Please read the accompanying `COPYING' file for details. Alternative
|
2007-01-01 07:26:28 +03:00
|
|
|
licensing for the compiler is available from Novell.
|
2002-02-12 01:18:46 +03:00
|
|
|
.PP
|
2002-03-25 01:42:33 +03:00
|
|
|
.SH SEE ALSO
|
2007-07-11 21:35:43 +04:00
|
|
|
mdb(1), mono(1), mopen(1), mint(1), sn(1)
|
2002-03-25 01:42:33 +03:00
|
|
|
.PP
|
2002-02-12 01:18:46 +03:00
|
|
|
.SH BUGS
|
2007-01-01 07:26:28 +03:00
|
|
|
To report bugs in the compiler, you must file them on our bug tracking
|
|
|
|
system, at:
|
|
|
|
http://www.mono-project.com/Bugs
|
2002-02-12 01:18:46 +03:00
|
|
|
.SH MAILING LIST
|
2007-01-01 07:26:28 +03:00
|
|
|
The Mono Mailing lists are listed at http://www.mono-project.com/Mailing_Lists
|
2002-02-12 01:18:46 +03:00
|
|
|
.SH MORE INFORMATION
|
2007-01-01 07:26:28 +03:00
|
|
|
The Mono C# compiler was developed by Novell, Inc
|
|
|
|
(http://www.novell.com, http) and is based on the
|
2002-02-12 01:18:46 +03:00
|
|
|
ECMA C# language standard available here:
|
|
|
|
http://www.ecma.ch/ecma1/STAND/ecma-334.htm
|
2007-01-01 07:26:28 +03:00
|
|
|
.PP
|
2007-04-22 21:07:34 +04:00
|
|
|
The home page for the Mono C# compiler is at http://www.mono-project.com/CSharp_Compiler
|