Next: , Previous: Optimization options, Up: Invocation   [Contents][Index]


9.11 Target code compilation options

If you are using Mmake, you need to pass these options to the target code compiler (e.g. ‘mgnuc’) rather than to ‘mmc’.


--target-debug

Enable debugging of the generated target code. If the target language is C, this has the same effect as ‘--c-debug’ (see below). If the target language is C#, this causes the compiler to pass ‘/debug’ to the C# compiler.


--cc compiler-name

Specify which C compiler to use.


--c-include-directory dir
--c-include-dir dir

Append dir to the list of directories to be searched for C header files. Note that if you want to override this list, rather than append to it, then you can set the MERCURY_MC_ALL_C_INCL_DIRS environment variable to a sequence of ‘--c-include-directory’ options.


--c-debug

Pass the ‘-g’ flag to the C compiler, to enable debugging of the generated C code, and also disable stripping of C debugging information from the executable. Since the generated C code is very low-level, this option is not likely to be useful to anyone except the Mercury implementors, except perhaps for debugging code that uses Mercury’s C interface extensively.


--no-c-optimize

Don’t enable the C compiler’s optimizations.


--no-ansi-c

Don’t specify to the C compiler that the ANSI dialect of C should be used. Use the full contents of system headers, rather than the ANSI subset.


--inline-alloc

Inline calls to ‘GC_malloc()’. This can improve performance a fair bit, but may significantly increase code size. This option has no effect if ‘--gc boehm’ is not set or if the C compiler is not GNU C.


--cflags options
--cflag option

Specify options to be passed to the C compiler. ‘--cflag’ should be used for single words which need to be quoted when passed to the shell.


--javac compiler-name
--java-compiler compiler-name

Specify which Java compiler to use. The default is ‘javac’.


--java-interpreter interpreter-name

Specify which Java interpreter to use. The default is ‘java’.


--java-flags options
--java-flag option

Specify options to be passed to the Java compiler. ‘--java-flag’ should be used for single words which need to be quoted when passed to the shell.


--java-classpath dir

Set the classpath for the Java compiler.


--java-object-file-extension extension

Specify an extension for Java object (bytecode) files. By default this is ‘.class’.


--csharp-compiler compiler-name

Specify which C# compiler to use. The default is ‘csc’.


--csharp-flags options
--csharp-flag option

Specify options to be passed to the C# compiler. ‘--csharp-flag’ should be used for single words which need to be quoted when passed to the shell.


--cil-interpreter interpreter-name

Specify the program that implements the Common Language Infrastructure (CLI) execution environment, e.g. ‘mono’.


Next: , Previous: Optimization options, Up: Invocation   [Contents][Index]