---
name: "csant"
section: "1"
platform: "linux"
package: "pnet-compiler"
version: "0.6.12-3"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/csant"
---

# csant(1)

the C-Sharp compilation build tool

## NAME

csant - the C-Sharp compilation build tool

## SYNOPSIS

**csant** \[ options \] \[*target*... \]

## DESCRIPTION

**Csant** is an XML based build tool used mainly to compile C# (pronounced C-Sharp) projects.  **Csant** supports multiple compilers and generates appropriate  command line specifications for each compiler.

## OPTIONS

- **--file *name*, -f *name***

  Specify the *name* of the build file to use.  If this option is not present, then csant will look for a file in the base source directory ending with the extension \`**.csant**' or \`**.build**'.

- **--base-src-dir *name*, -b *name***

  Specify the base source directory for the build tree.  By default, this is the current directory.

- **--base-build-dir *name*, -B *name***

  Specify the base build directory for the build tree.  By default, this is the current directory.

- **-D*name*=*value*, --define *name*=*value***

  Define the property \`*name*' and set it to \`*value*'.

- **--profile *name*, -p *name***

  Specify the definition profile to use.  The definition profile is loaded before the main build file, and typically modifies properties. This can be used to create multiple build configurations.

- **--just-print, -n**

  Print the names of the commands, but do not execute them.

- **--dummy-doc, -d**

  Output dummy documentation files.

- **--keep-going, -k**

  Keep processing even after an error.

- **--silent, -s**

  Do not print the names of commands as they are executed.

- **--csc-redirect, -c**

  Treat \<csc\> tags as \<compile\> tags (for NAnt compatibility).

- **--mono-corlib, -m**

  Use Mono's corlib instead of mscorlib during C# compiles.

- **--compiler *name*, -C *name***

  Specify which compiler to use (\`**cscc**' (default), \`**csc**', or \`**mcs**').  Whenever csant encounters a \<compile\> tag, it will launch the specified compiler, using the appropriate command-line options.

- **--version, -v**

  Print the version of the program.

- **--help**

  Print this help message.

## NANT COMPATIBILITY

**Csant** is compatible with a subset of NAnt build files . The "**-c**" command  line option turns on NAnt compatibility.

## COMPILER COMPATIBILITY

**Csant** works with all other C# compilers currently in distribution. The choice of compiler is using the "**-C**" option.

## SEE ALSO

[ilasm(1)](/ilasm/1.md), [cscc(1)](/cscc/1.md)
