| title | Building from source |
|---|---|
| description | Build dre and the first-party plugins with cargo and Go. |
| section | extend |
| position | 2 |
Use a source build to develop DRE or test a change before a release. Requires a recent stable Rust toolchain, and Go for the Databricks, BigQuery and Snowflake packages.
cargo build --release
./target/release/dre --helpThe first-party plugin packages are built from the same workspace
(target/release/dre-plugin-*), except the Go packages (databricks, bigquery, snowflake,
clickhouse) in go/:
for p in databricks bigquery snowflake clickhouse; do
(cd "go/$p" && go build -o "../../target/release/dre-plugin-$p" .)
donePut them in a project's dre_deps/plugins/ (or point DRE_PLUGINS_DIR at them) to use them
without a registry.
For a full local trial, build only the needed packages and use the tutorial project:
cargo build --release -p dre-cli -p dre-plugin-duckdb -p dre-plugin-csv -p dre-plugin-xlsx
export DRE_PLUGINS_DIR="$PWD/target/release"
cd examples/tutorial
../../target/release/dre validate --no-auto-install
../../target/release/dre run --no-auto-install --preview 5If CARGO_TARGET_DIR is set, substitute that directory for target in every command. Avoid
copying a build for another architecture; a plugin must run on the same machine as dre.
plugin-not-installed means the binary name or plugins directory does not match discovery;
plugin-install-failed describes a download problem, not a Rust compilation failure.
The protocol specifies discovery layouts,
the CLI reference lists flags, and the
glossary defines packages.
Previous: DRE plugin protocol, version 1 · Next: Editor setup