123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114 |
- Advanced commands:
- //compileToC, cc compile project with C code generator
- //compileToCpp, cpp compile project to C++ code
- //compileToOC, objc compile project to Objective C code
- //js compile project to Javascript
- //e run a Nimscript file
- //rst2html convert a reStructuredText file to HTML
- //rst2tex convert a reStructuredText file to TeX
- //jsondoc extract the documentation to a json file
- //ctags create a tags file
- //buildIndex build an index for the whole documentation
- //run run the project (with Tiny C backend; buggy!)
- //genDepend generate a DOT file containing the
- module dependency graph
- //dump dump all defined conditionals and search paths
- see also: --dump.format:json (useful with: ` | jq`)
- //check checks the project for syntax and semantic
- Advanced options:
- -o:FILE, --out:FILE set the output filename
- --stdout output to stdout
- --colors:on|off turn compiler messages coloring on|off
- --listFullPaths list full paths in messages
- -w:on|off|list, --warnings:on|off|list
- turn all warnings on|off or list all available
- --warning[X]:on|off turn specific warning X on|off
- --hints:on|off|list turn all hints on|off or list all available
- --hint[X]:on|off turn specific hint X on|off
- --styleCheck:off|hint|error
- produce hints or errors for Nim identifiers that
- do not adhere to Nim's official style guide
- https://nim-lang.org/docs/nep1.html
- --showAllMismatches:on|off
- show all mismatching candidates in overloading
- resolution
- --lib:PATH set the system library path
- --import:PATH add an automatically imported module
- --include:PATH add an automatically included module
- --nimcache:PATH set the path used for generated files
- --header:FILE the compiler should produce a .h file (FILE
- is optional)
- -c, --compileOnly compile Nim files only; do not assemble or link
- --noLinking compile Nim and generated files but do not link
- --noMain do not generate a main procedure
- --genScript generate a compile script (in the 'nimcache'
- subdirectory named 'compile_$$project$$scriptext'),
- implies --compileOnly
- --genDeps generate a '.deps' file containing the dependencies
- --os:SYMBOL set the target operating system (cross-compilation)
- --cpu:SYMBOL set the target processor (cross-compilation)
- --debuginfo enables debug information
- -t, --passC:OPTION pass an option to the C compiler
- -l, --passL:OPTION pass an option to the linker
- --cincludes:DIR modify the C compiler header search path
- --clibdir:DIR modify the linker library search path
- --clib:LIBNAME link an additional C library
- (you should omit platform-specific extensions)
- --genMapping generate a mapping file containing
- (Nim, mangled) identifier pairs
- --project document the whole project (doc2)
- --docSeeSrcUrl:url activate 'see source' for doc and doc2 commands
- (see doc.item.seesrc in config/nimdoc.cfg)
- --lineDir:on|off generation of #line directive on|off
- --embedsrc embeds the original source code as comments
- in the generated output
- --threadanalysis:on|off turn thread analysis on|off
- --tlsEmulation:on|off turn thread local storage emulation on|off
- --taintMode:on|off turn taint mode on|off
- --implicitStatic:on|off turn implicit compile time evaluation on|off
- --patterns:on|off turn pattern matching on|off
- --memTracker:on|off turn memory tracker on|off
- --hotCodeReloading:on|off
- turn support for hot code reloading on|off
- --excessiveStackTrace:on|off
- stack traces use full file paths
- --oldNewlines:on|off turn on|off the old behaviour of "\n"
- --laxStrings:on|off when turned on, accessing the zero terminator in
- strings is allowed; only for backwards compatibility
- --nilseqs:on|off allow 'nil' for strings/seqs for
- backwards compatibility
- --skipCfg do not read the general configuration file
- --skipUserCfg do not read the user's configuration file
- --skipParentCfg do not read the parent dirs' configuration files
- --skipProjCfg do not read the project's configuration file
- --gc:refc|markAndSweep|boehm|go|none|regions
- select the GC to use; default is 'refc'
- --index:on|off turn index file generation on|off
- --putenv:key=value set an environment variable
- --NimblePath:PATH add a path for Nimble support
- --noNimblePath deactivate the Nimble path
- --noCppExceptions use default exception handling with C++ backend
- --cppCompileToNamespace:namespace
- use the provided namespace for the generated C++ code,
- if no namespace is provided "Nim" will be used
- --excludePath:PATH exclude a path from the list of search paths
- --dynlibOverride:SYMBOL marks SYMBOL so that dynlib:SYMBOL
- has no effect and can be statically linked instead;
- symbol matching is fuzzy so
- that --dynlibOverride:lua matches
- dynlib: "liblua.so.3"
- --dynlibOverrideAll makes the dynlib pragma have no effect
- --listCmd list the commands used to execute external programs
- --parallelBuild:0|1|... perform a parallel build
- value = number of processors (0 for auto-detect)
- --incremental:on|off only recompile the changed modules (experimental!)
- --verbosity:0|1|2|3 set Nim's verbosity level (1 is default)
- --errorMax:N stop compilation after N errors; 0 means unlimited
- --experimental:$1
- enable experimental language feature
- -v, --version show detailed version information
- --profiler:on|off Enable profiling; requires `import nimprof`, and
- works better with `--stackTrace:on`
- see also https://nim-lang.github.io/Nim/estp.html
|