summary refs log blame commit diff stats
path: root/doc/advopt.txt
blob: 252067129ddb5593949239465ebc5abcb308a747 (plain) (tree)
1
2
3
4
5
6
7
8
9
                  



                                                                 
                                                

                                                                   
                                                                    
                                              
                                                                      
                                                                         
                                                              
                                                   
                                                                          
                                                                      
 
                 
                                                   
                                            
                                                                  
                                                       

                                                                          
                                                          
                                                                       
                                                       



                                                                            
                                                       

                                                                
                                                                 

                                                                       

                                                                           

                                                                        

                                                                               
                                                                               


                                                                               

                                                            



                                                                          
                                                              
                                                           
                                                             

                                                                           
                                                                

                                                                       
                                                       
                                                                      
                                                  
                                                                        
                                                        
                                                      

                                                                      

                                                            
                                                                 

                                                                                

                                                            
                                                                      
                                                                     

                                                                            
                                                 
                                                                   
                                                             
                                                       

                                                         
                                                                           


                                                                                  
                                                                        


                                                                               
                                                             
                                                 
                                                                  
                                                                               
                                                    
                                                                            
                                                                    

                                                                
                                                             
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
  //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
  --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|v2|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)
  --verbosity:0|1|2|3       set Nim's verbosity level (1 is default)
  --experimental:$1
                            enable experimental language feature
  -v, --version             show detailed version information