Building the engine: setup and outputs
What to build, required tools and how to check the resulting package.
First choose the output: a development editor, a game export template or a separate native library. A native extension normally does not require building the engine itself.
Known limitation in the current sources
Build helpers in Source/methods.py import SCons.Entity, which installed SCons 4.11.1 does not provide. Isolated calls to glob_recursive and glob_recursive_2 raise ImportError before directory traversal. A full build was not attempted; the instructions below describe configuration rather than proving successful execution for this tree state. See IDE setup for the diagnosis and test limits. This defect was not repaired by changing the installed Runtime.
Preparation
Run this section’s commands from Source, where SConstruct lives. You need a consistent source checkout, Python 3.9 or newer, SCons 4.4 or newer and the target platform’s compiler/SDK. Current SConstruct declares the Python/SCons minimums; platform tools need separate checks.
Use the same Python to install and run SCons. A successful python --version does not prove SCons is installed for that interpreter. Check the tools:
python --version
python -m SCons --versionThe build host runs the compiler; the target platform runs the resulting binary. Cross-compilation requires a suitable toolchain, SDK and dependencies; platform=... alone is insufficient.
Choose a target
| target | Output |
|---|---|
| editor | Editor and development tools with editor API |
| template_debug | Game export template with diagnostic features, without the editor |
| template_release | Release game template without the editor |
An editor does not replace export templates. Building only template_release does not produce an editor. Optimization, symbols, architecture and managed integration are additional choices.
Workflow
- Configure your platform tools: Windows, Linux/BSD, macOS.
- Record platform, target, arch, precision, modules and profile files. Establish a normal configuration before changing one option at a time.
- For C# projects enable the mono module and prepare matching managed assemblies/SDK. Compiling a native executable alone does not establish that package: see building with .NET.
- Find the actual output in bin using the linker log. Names depend on platform, target, architecture, precision, dev_build and modules; an old .64.exe suffix is not a universal template.
- Run the resulting package and check its version, project opening and the required export with its selected template.
Retain the source revision, complete options, tool versions, log and artifact hashes. Product version 1.0.0 does not distinguish builds with different modules or ABI.
Continue
SCons options explain configuration. Size reduction starts with a measured baseline. Mobile/Web targets need their own platform instructions rather than a renamed desktop binary.
These instructions were checked against current build files. Only the SCons version query was executed in this check; the full editor, export templates and cross-compilation were not freshly built.