mirror of
https://github.com/dexoron/dcr.git
synced 2026-10-21 13:18:29 +00:00
67 lines
2.1 KiB
Plaintext
67 lines
2.1 KiB
Plaintext
---
|
|
sidebar_label: Introduction
|
|
---
|
|
|
|
# DCR — C/C++ Build Tool & Package Manager
|
|
|
|
<details>
|
|
<summary>Quick reference</summary>
|
|
|
|
```bash
|
|
# Installation (dcrup)
|
|
curl -fsSL https://sh.dcr-tool.ru | sh -s -- self-install
|
|
export PATH="$HOME/.dcr/bin:$PATH"
|
|
dcrup install stable
|
|
|
|
# Create a project
|
|
dcr new my-app
|
|
cd my-app
|
|
|
|
# Build and run
|
|
dcr build
|
|
dcr run
|
|
|
|
# Run tests
|
|
dcr test
|
|
|
|
# Add a dependency
|
|
dcr add fmt
|
|
|
|
# Generate IDE files
|
|
dcr gen vscode
|
|
```
|
|
|
|
</details>
|
|
|
|
## Contents
|
|
|
|
| Section | Description |
|
|
|---------|-------------|
|
|
| [Getting Started](/docs/getting-started/installation) | Installation and first steps |
|
|
| [Commands](/docs/commands/project-commands) | All CLI commands |
|
|
| [Reference](/docs/reference/dcr-toml) | Configuration, build, dependencies, platforms |
|
|
| [Testing](/docs/testing/test-framework) | Built-in test framework |
|
|
| [Recipes](/docs/recipes/cross-to-windows) | Common scenarios |
|
|
| [IDE Integration](/docs/ide-integration) | VS Code, CLion, compile_commands.json |
|
|
| [Self Update](/docs/self-update) | Auto-update |
|
|
| [FAQ](/docs/faq) | Frequently asked questions |
|
|
| [Changelog](/docs/changelog) | Version history |
|
|
| [License](/docs/license) | DCR and vendored library licenses |
|
|
| [Contributing](/docs/contributing) | DCR development |
|
|
|
|
## Features
|
|
|
|
- **Incremental builds** — mtime + `.d` headers + SHA256 fingerprint
|
|
- **Parallel compilation** — thread::scope, atomic task queue
|
|
- **7 backends** — gcc/clang (unix_cc), MSVC/clang-cl (msvc), GAS, NASM, MASM, FASM, LLVM IR
|
|
- **8 project kinds** — bin, staticlib, sharedlib, efi, elf, none, custom, flat-bin
|
|
- **Disk images** — optional `[archive]` packs FAT12/16/32 images after build
|
|
- **Cross-compilation** — short names and full triples
|
|
- **Profiles** — debug / release with field overrides
|
|
- **Workspaces** — multi-package projects with topological sort
|
|
- **Registry + Git + Path** — three dependency mechanisms
|
|
- **IDE generation** — VS Code, CLion, compile_commands.json, JSON metadata
|
|
- **pkg-config** — automatic system library discovery
|
|
- **Per-command `--help`** — `dcr build --help`, `dcr new --help`, etc.
|
|
- **Man pages** — `man dcr`, `man dcr-build`, `man dcr-new`
|