Version: 5.1

raco: Racket Command-Line Tools

The raco program supports various Racket tasks from a command line. The first argument to raco is always a specific command name. For example, raco make starts a command to compile a Racket source module to bytecode format.

The set of commands available through raco is extensible. Use raco help to get a complete list of available commands for your installation. This manual covers the commands that are available in a typical Racket installation.

    1 raco make: Compiling Source to Bytecode

      1.1 Bytecode Files

      1.2 Dependency Files

      1.3 API for Making Bytecode

      1.4 Compilation Manager Hook for Syntax Transformers

      1.5 Compiling to Raw Bytecode

    2 raco exe: Creating Stand-Alone Executables

      2.1 API for Creating Executables

        2.1.1 Executable Creation Signature

        2.1.2 Executable Creation Unit

      2.2 Installation-Specific Launchers

        2.2.1 Creating Launchers

        2.2.2 Launcher Path and Platform Conventions

        2.2.3 Launcher Configuration

        2.2.4 Launcher Creation Signature

        2.2.5 Launcher Creation Unit

    3 raco distribute: Sharing Stand-Alone Executables

      3.1 API for Distributing Executables

      3.2 API for Bundling Distributions

    4 raco pack: Packaging Library Collections

      4.1 API for Packaging

    5 raco planet: Automatic Package Distribution

    6 raco setup: Installation Management

      6.1 Running raco setup

        6.1.1 Controlling raco setup with "info.rkt" Files

      6.2 "info.rkt" File Format

      6.3 API for Installation

        6.3.1 raco setup Unit

        6.3.2 Options Unit

        6.3.3 Options Signature

      6.4 API for Installing ".plt" Archives

        6.4.1 Installing a Single ".plt" File

 Non-GUI Installer

 GUI Installer

 GUI Unpacking Signature

 GUI Unpacking Unit

        6.4.2 Unpacking ".plt" Archives

        6.4.3 Format of ".plt" Archives

      6.5 API for Finding Installation Directories

      6.6 API for Reading "info.rkt" Files

      6.7 API for Paths Relative to "collects"

      6.8 API for Cross-References for Installed Manuals

    7 raco decompile: Decompiling Bytecode

      7.1 API for Decompiling

      7.2 API for Parsing Bytecode

        7.2.1 Prefix

        7.2.2 Forms

        7.2.3 Expressions

        7.2.4 Syntax Objects

      7.3 API for Marshaling Bytecode

    8 raco demod: Demodularizing Programs

    9 raco ctool: Working with C Code

      9.1 Compiling and Linking C Extensions

        9.1.1 API for 3m Transformation

      9.2 Embedding Modules via C

      9.3 Compiling to Native Code via C

      9.4 API for Raw Compilation

        9.4.1 Bytecode Compilation

        9.4.2 Compilation via C

        9.4.3 Loading compiler support

        9.4.4 Options for the Compiler

        9.4.5 The Compiler as a Unit


 Main Compiler Unit

 Options Unit

 Compiler Inner Unit

    10 Adding a raco Command

      10.1 Command Argument Parsing