Otava C++ compiler.
Usage: oc [options] { FILE.project | FILE.solution }
Options:
| Long option | Short option | Description |
|---|---|---|
| --help | -h | Print help and exit. |
| --verbose | -v | Be verbose. |
| --config=(debug|release|trace|CONFIG) | -c=(debug|release|trace|CONFIG) |
Set build configuration to debug, release, trace, or user defined configuration CONFIG. Default configuration is debug. |
| --opt=OPTIMIZATION_LEVEL | -O=OPTIMIZATION_LEVEL |
Set release mode optimization level to OPTIMIZATION_LEVEL (0-3). Default level for release configuration is 2. |
| --define=SYMBOL | -d=SYMBOL | Define build symbol SYMBOL. |
| --rebuild | -r | Rebuild project or solution. |
| --all | -a | Build also all projects the given project depends on. |
| --debug-parse | -p | Print source parsing log to "parse.log" file located in the current working directory. |
| --xml | -x | Write ASTs as XML. |
| --seed | -s | Initialize uuid seed from hash code of the file path of each project. |
| --symbol-xml | -y | Write symbols as XML. |
| --debug | -b | Set compile debugging on. |
| --out=FILENAME | -o=FILENAME | Write compile debug output to file FILENAME. |
Examples:
| Command | Description |
|---|---|
| oc hello.project | Compile hello.project using debug configuration. |
| oc -c=release -O=1 hello.project | Compile hello.project using release configuration with optimization level 1. |
| oc -v soul.solution | Build all projects in solution soul.solution. Generate verbose output. |
| oc -d=NOWARN soul.solution | Build all projects in solution soul.solution with NOWARN symbol defined. This does not generate any warning messages. |
| oc -c=memdbg hello.project | Compile the hello.project using memdbg configuration. When runnig bin/memdbg/hello.exe this will print memory leaks to standard output after hello.exe has been run. |
| oc -a xml_parser.project | Compile xml_parser.project and all projects it depends on. | .
| oc -r xml_parser.project | Rebuild only xml_parser.project. | .
| oc -ra xml_parser.project | Rebuild xml_parser.project and all projects it depends on. | .