The main action of mzc is determined through one of the following command-line flags:
--make (the default), -k or --make-collection : Compiles Scheme modules and all transitive imports to bytecode. See Compiling Modified Modules to Bytecode.
--exe, --gui-exe, or --exe-dir : Creates an executable to run a Scheme module, or assembles all support libraries to move an executable to a new filesystem. See Stand-Alone Executables from Scheme Code.
--collection-plt or --plt : packages Scheme code for installation into a different PLT Scheme installation. See Packaging Library Collections. PLaneT is usually a better alternative.
--cc, --ld, --xform or -x : Compiles, links or transforms (for GC cooperation) C code to extend the PLT Scheme runtime system. See Compiling and Linking C Extensions. Using the scheme/foreign FFI is often better; see FFI: PLT Scheme Foreign Interface.
--c-mods : Creates C source to embed Scheme modules into an executable that also embeds PLT Scheme. See Embedding Scheme Modules via C.
--decompile : Parses a bytecode file and prints its content as quasi-Scheme. See Decompiling Bytecode.
--zo, -z, or --collection-zo : Compiles Scheme code to bytecode, without following transitive imports. See Compiling to Raw Bytecode. This mode is rarely useful.
--extension, -e, --c-source, or -c : Compiles Scheme code to a native-code extension via C. See Compiling to Native Code via C. This mode is rarely useful.