diff --git a/docs/README.md b/docs/README.md index 18252e9..f057396 100644 --- a/docs/README.md +++ b/docs/README.md @@ -34,6 +34,15 @@ The main binaries that will be built are: - `unittest` is the test runner of duckdb. Again, the extension is already linked into the binary. - `.duckdb_extension` is the loadable binary as it would be distributed. +### Tips for speedy builds +DuckDB extensions currently rely on DuckDB's build system to provide easy testing and distributing. This does however come at the downside of requiring the template to build DuckDB and its unittest binary every time you build your extension. To mitigate this, we highly recommend installing [ccache](https://ccache.dev/) and [ninja](https://ninja-build.org/). This will ensure you only need to build core DuckDB once and allows for rapid rebuilds. + +To build using ninja and ccache ensure both are installed and run: + +```sh +GEN=ninja make +``` + ## Running the extension To run the extension code, simply start the shell with `./build/release/duckdb`. This shell will have the extension pre-loaded.