12.2 Embedding Modules via C

The --c-mods mode for raco ctool takes a set of Racket modules and generates a C source file that can be used as part of program that embeds the Racket run-time system. See Embedding Racket into a Program in Inside: Racket C API for an explanation of embedding programs.

The generated source file embeds the specified modules, and it defines a declare_modules function that puts the module declarations into a namespace. Thus, using the output of raco ctool --c-mods, a program can embed Racket with a set of modules so that it does not need a "collects" directory to load modules at run time.