--- sidebar_label: Library project --- # Library Project Creating a static library and using it in another project. ## Step 1: Create the library ```bash dcr new my-lib cd my-lib ``` `dcr.toml`: ```toml [package] name = "my-lib" version = "0.1.0" type = "none" [build] language = "c" standard = "c11" kind = "staticlib" ``` `src/my_lib.h`: ```c #ifndef MY_LIB_H #define MY_LIB_H int add(int a, int b); #endif ``` `src/my_lib.c`: ```c #include "my_lib.h" int add(int a, int b) { return a + b; } ``` ## Step 2: Build ```bash dcr build --release ``` Artifacts: * `target/\/release/libmy-lib.a` (Linux) * `target/release/my-lib.lib` (Windows) * `target/include/` — header files ## Step 3: Use in another project ```bash dcr new my-app cd my-app dcr add my-lib ../my-lib ``` Automatically: * Adds include path to `target/include/` of the library * Adds lib path to `target/\/release/` * Links `libmy-lib.a` / `my-lib.lib`