dcr 0.8.4

DCR is a utility for managing C/C++ projects in a Cargo-like style.
---
sidebar_label: Platform support
---

# Platform Support

## Target Triples

DCR normalizes target triples. Short platform names are expanded to full triples.

### Linux

```
target/<arch>-unknown-linux-<env>/<profile>/
```

Architectures: `x86_64`, `aarch64`, `i686`, `armv7`, `riscv64` (host-detected).
Environments: `gnu` (default), `musl`.

Artifact type: ELF. Extensions: `.so` (sharedlib), `.a` (staticlib).

### macOS

```
target/<profile>/ (default) or target/<triple>/<profile>/ (with target)
```

Architectures: `x86_64`, `aarch64` (host-detected).

Extensions: `.dylib` (sharedlib), `.a` (staticlib).

### Windows

```
target/<profile>/ (default) or target/<triple>/<profile>/ (with target)
```

Architectures: `x86_64`, `aarch64`.
Environments: `msvc` (default), `gnu` (MinGW).

Extensions: `.exe` (bin), `.lib` (staticlib), `.dll` (sharedlib), `.efi` (UEFI).

### BSD

```
target/<arch>-unknown-<os>/<profile>/
```

Supported systems: `freebsd`, `openbsd`, `netbsd`, `dragonfly`.

## Host Detection

DCR uses `std::env::consts::ARCH` and `std::env::consts::OS` for host platform detection. Used as fallback when `target` is not specified.