Version: 5.0

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

          6.4.1.1 Non-GUI Installer

          6.4.1.2 GUI Installer

          6.4.1.3 GUI Unpacking Signature

          6.4.1.4 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 ctool: Working with C Code

      8.1 Compiling and Linking C Extensions

        8.1.1 API for 3m Transformation

      8.2 Embedding Modules via C

      8.3 Compiling to Native Code via C

      8.4 API for Raw Compilation

        8.4.1 Bytecode Compilation

        8.4.2 Compilation via C

        8.4.3 Loading compiler support

        8.4.4 Options for the Compiler

        8.4.5 The Compiler as a Unit

          8.4.5.1 Signatures

          8.4.5.2 Main Compiler Unit

          8.4.5.3 Options Unit

          8.4.5.4 Compiler Inner Unit

    9 Adding a raco Command

      9.1 Command Argument Parsing