|  | 
   
 |   |  |   
  
    | CSC(1) | FreeBSD General Commands Manual | CSC(1) |  
csc— driver
    program for the CHICKEN Scheme compiler
 
  
    | csc | [OPTION ...] [FILENAME
      ...] |  cscis a program that invokes the CHICKEN
    compiler and the host systems C compiler to generate an executable from a
    Scheme source file or C files generated by CHICKEN.
 FILENAME is a Scheme source file name with
    optional extension or a C/C++/Objective-C source, object or library file
    name with extension. OPTION may be one of the
    following: General options: 
  -h,-helpDisplay usage text and exit.-v,-verboseShow compiler notes and tool-invocations.-vvDisplay information about translation progress.-vvvDisplay information about all compilation stages.-versionDisplay Scheme compiler version and exit.-releaseDisplay release number and exit. File and pathname options: 
  -oFILENAME,-output-fileFILENAMESpecifies target executable name.-IPATHNAME,-include-pathPATHNAMESpecifies alternative path for included files.-to-stdoutWrite compiler to stdout (implies -t).-s,-shared,-dynamicGenerate dynamically loadable shared object file. Language options: 
  -DSYMBOL,-featureSYMBOLRegister feature identifier.-no-featureSYMBOLDisable builtin feature identifier.-c++Compile via a C++ source file (.cpp).-objcCompile via Objective-C source file (.m). Syntax related options: 
  -i,-case-insensitiveDon't preserve case of read symbols.-K,-keyword-styleSTYLEEnable alternative keyword-syntax (prefix, suffix or none).-no-parentheses-synonymsDisables list delimiter synonyms.-no-symbol-escapeDisables support for escaped symbols.-r5rs-syntaxDisables the CHICKEN extensions to R5RS syntax.-compile-syntaxMacros are made available at run-time.-jMODULE,-emit-import-libraryMODULEWrite compile-time module information into separate file.-J,-emit-all-import-librariesEmit import-libraries for all defined modules.-no-compiler-syntaxDisable expansion of compiler-macros.-mNAME,-moduleNAMEWrap compiled code in module of the given name.-M,-module-registrationAlways generate module registration code, even when import libraries are
      emitted.-N,-no-module-registrationDo not generate module registration code. Overrides
      -module-registration. Translation options: 
  -x,-explicit-useDo not use units ‘library’ and ‘eval’ by
      default.-P,-check-syntaxStop compilation after macro-expansion.-A,-analyze-onlyStop compilation after first analysis pass. Debugging options: 
  -w,-no-warningsDisable warnings.-d0,-d1,-d2,-d3,-debug-levelNUMBERSet level of available debugging information.-no-traceDisable rudimentary debugging information.-profileExecutable emits profiling information.-accumulate-profileExecutable emits profiling information in append mode.-profile-nameFILENAMEName of the generated profile information file.-typesFILENAMELoad additional type database. Optimization options: 
  -O,-O0,-O1,-O2,-O3,-O4,-O5,-optimize-levelNUMBEREnable certain sets of optimization options.-optimize-leaf-routinesEnable leaf routine optimization.-no-usual-integrationsStandard procedures may be redefined.-u,-unsafeDisable safety checks.-localAssume globals are only modified in current file.-b,-blockEnable block-compilation.-disable-interruptsDisable interrupts in compiled code.-f,-fixnum-arithmeticAssume all numbers are fixnums.-disable-stack-overflow-checksDisables detection of stack-overflows.-inlineEnable inlining.-inline-limitLIMITSet inlining threshold.-inline-globalEnable cross-module inlining.-specializePerform type-based specialization of primitive calls.-oiFILENAME,-emit-inline-fileFILENAMEGenerate file with globally inlinable procedures (implies
      -inline-local).-consult-inline-fileFILENAMEExplicitly load inline file.-otFILENAME,-emit-types-fileFILENAMEWrite type-declaration information into file.-no-argc-checksDisable argument count checks.-no-bound-checksDisable bound variable checks.-no-procedure-checksDisable procedure call checks.-no-procedure-checks-for-usual-bindingsDisable procedure call checks only for usual bindings.-no-procedure-checks-for-toplevel-bindingsDisable procedure call checks for toplevel bindings.-strict-typesAssume variable do not change their type.-clusteringCombine groups of local procedures into dispatch loop.-lfa2Perform additional lightweight flow-analysis pass.-unroll-limitLIMITSpecifies inlining limit for self-recursive calls. Configuration options: 
  -unitNAMECompile file as a library unit.-usesNAMEDeclare library unit as used.-heap-sizeNUMBERSpecifies heap-size of compiled executable.-nurseryNUMBER-stack-sizeNUMBERSpecifies nursery size of compiled executable.-XFILENAME,-extendFILENAMELoad file before compilation commences.-preludeEXPRESSIONAdd expression to beginning of source file.-postludeEXPRESSIONAdd expression to end of source file.-prologueFILENAMEInclude file before main source file.-epilogueFILENAMEInclude file after main source file.-e,-embeddedCompile as embedded (don't generate
      ‘main()’).-guiCompile as GUI application.-linkNAMELink extension with compiled executable (implies
      ‘-uses’).-RNAME,-require-extensionNAMERequire extension and import in compiled code.-dll,-libraryCompile multiple units into a dynamic library.-libdirDIRECTORYOverride location of runtime library directory. Options to other passes: 
  -COPTIONPass option to C compiler.-LOPTIONPass option to linker.-I<DIR>Pass “-I<DIR>” to C compiler
      (add include path).-L<DIR>Pass “-L<DIR>” to linker (add
      library path).-kKeep intermediate files.-cStop after compilation to object files.-tStop after translation to C.-ccCOMPILERSelect a C compiler other than the default.-cxxCOMPILERSelect a C++ compiler other than the default.-ldCOMPILERSelect a linker other than the default.-staticLink with static CHICKEN libraries and extensions.-F<DIR>Pass “-F<DIR>” to C compiler
      (add framework header path on Mac OS X).-frameworkNAMEPassed to linker on Mac OS X.-rpathPATHNAMEAdd directory to runtime library search path.-Wl,...Pass linker options.-stripStrip resulting binary. Inquiry options: 
  -homeShow home-directory (where support files go).-cflagsShow required C-compiler flags and exit.-ldflagsShow required linker flags and exit.-libsShow required libraries and exit.-cc-nameShow name of default C compiler used.-cxx-nameShow name of default C++ compiler used.-ld-nameShow name of default linker used.-dry-runJust show commands executed, don't run them (implies
      ‘-v’). Obscure options: 
  -debugMODESDisplay debugging output for the given modes.-compilerPATHNAMEUse a compiler other than the default ‘chicken’.-rawDo not generate implicit init- and exit code.-emit-external-prototypes-firstEmit prototypes for callbacks before foreign declarations.-regenerate-import-librariesAlways emit import libraries, even when their contents haven't changed.
      The default behaviour is to preserve existing import libraries.-ignore-repositoryDo not refer to repository for extensions.-keep-shadowed-macrosDo not remove shadowed macros.-hostCompile for host when configured for cross-compiling.-private-repositoryLoad extensions from executable path.-deployedLink support file to be used from a deployed executable (sets
      ‘rpath’ accordingly, if supported on this platform.)-no-elevationEmbed manifest on Windows to supress elevation warnings for programs named
      ‘install’ or ‘setup’. Options can be collapsed if unambiguous, so “-vkfO”
    is the same as “-v -k -fixnum-arithmetic -optimize”. The following environment variables change the behaviour of
    csc: 
  CSC_OPTIONSCan hold default options that should be passed to every invocation of
      csc. The cscutility exits 0 on success,
    and >0 if an error occurs. 
  Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc.
 |