The ZTC compiler takes a project as input and produces an executable bytecode file ready to be uplinked on a virtualized.

The command:

ztc compile project target

compiles the source files found at project (the project path) for a device with target target.

The entry point of the program is the file Every additional Python module needed wil be searched in the following order:

  1. Project directory
  2. Directories passed with the -I option in the given order (see below)
  3. The Zerynth standard library
  4. The installed libraries

Since Zerynth programs allow mixed C/Python code, the compiler also scans for C source files and compiles them with the appropriate C compiler for target. C object files are packed and included in the output bytecode.

The compile command accepts additional options:

  • -I/--include path, adds path to the list of directories scanned for Zerynth modules. This option can be repeated multiple times.
  • -D/--define def, adds a C macro definition as a parameter for native C compiler. This option can be repeated multiple times.
  • -o/--output path, specifies the path for the output file. If not specified it is main.vbo in the project folder.