Quick Start
GDCC is an open-source GDScript compiler and toolchain that compiles GDScript scripts into native dynamic library modules executed through the GDExtension interface. Its built-in fast compilation backend compiles and links inside the compiler process — no external C compiler required.
Install the Editor Plugin (Recommended)
Section titled “Install the Editor Plugin (Recommended)”The most convenient way to use GDCC is the Godot editor plugin (requires Godot 4.5 or newer):
- Download the editor plugin archive
gdcc_editor_addon.zipfrom GitHub Releases. - In the Godot editor, open the “Asset Library” page, click the “Import” button in the top-right corner, select the downloaded zip file, and confirm the import.
- Click the “Project” tab in the top toolbar, open the “Project Settings” page, go to the “Plugins” tab, and enable the GDCC editor plugin.
- A “GDCC” tab will appear in the bottom dock; open it and follow the setup wizard to finish installation (the initial setup requires about 60MB of disk space).
- Once installed, create a new
.gd3script, write code, and click the “Build” button in the top-right corner to compile your GDScript into a GDExtension module and hot-reload it into the running Godot engine.
Using GDCC in the Editor
Section titled “Using GDCC in the Editor”GDCC recognizes scripts to compile by the .gd3 suffix — .gd scripts in your project still run on the built-in interpreter and are not affected. To enable GDCC compilation for a script, rename its suffix to .gd3.
After clicking the Build button, the dynamic library is deployed into the project and hot-reloaded automatically — no editor restart or scene reload needed; signal connections and Callables already established in the scene are repointed to the new code. The popup panel next to the Build button lets you switch the compiler backend, optimization level, and strict mode; the bottom dock shows connection, diagnostics, and build status along with logs.
The plugin also provides real-time diagnostics, code completion, hover documentation, go-to-definition (requires Godot 4.6+), outline, and syntax highlighting for .gd3 scripts.
Command-Line Usage
Section titled “Command-Line Usage”For command-line and CI/CD scenarios, download a platform package and extract it to any directory. Normal platform packages are named gdcc-<version>-<os>-<arch>.zip and contain the gdcc launcher and core files; *-full.zip packages additionally bundle all cross-compilation toolchains.
The basic command shape is:
gdcc [options] <files...>Compile one script:
gdcc -o build/demo src/player.gdCompile multiple scripts into one module:
gdcc -o build/demo src/player.gd src/enemy.gdWhen a script belongs to a Godot project, pass the project file so GDCC can emit .gdextension metadata:
gdcc --project game/project.godot -o build/demo game/src/player.gdCommon Options
Section titled “Common Options”-o/--output <output>sets the output target path. If omitted, GDCC derives a name from the input files.--gde <version>selects the Godot GDExtension API version. Currently only4.5.1is supported.--opt/--optimize <level>selectsdebugorrelease.--backend <backend>selects the C compiler backend:tccorzig. If omitted, debug builds use the built-intccbackend and release builds usezig.--target <platform>selects a target such aslinux-x86-64,windows-x86-64,linux-aarch64, ormacos-aarch64.--prefix <prefix>and--class-map Source=Canonicalcontrol generated top-level canonical class names.
The Compiler Server
Section titled “The Compiler Server”GDCC can run as a long-lived background process, offering syntax analysis, diagnostics, completion, and build capabilities to external tools over JSON-RPC:
gdcc serve [--host 127.0.0.1] [--port 6099]The editor plugin builds its IDE-grade features on top of this service. The editor plugin launches the service automatically from your configuration when it isn’t running — you don’t need to run this command manually.