## TL;DR
Install Graphviz so the `dot` executable is on PATH, or point DOT_PATH at it. Doxygen shells out to dot for every diagram; a missing binary fails them all.

## Error
```text
Problems running dot: exit code=1, command='dot', arguments='...'
```

## Steps
1. Check dot directly: run `dot -V` in the same environment as the Doxygen run. Expected: a version string, or "command not found" telling you it is missing.
2. Install Graphviz via your OS package manager, or download it for the build machine. Expected: `dot -V` now prints a version.
3. If dot lives outside PATH, set `DOT_PATH` in the Doxyfile to the directory containing it. Expected: Doxygen finds the binary without PATH changes.
4. Re-run `doxygen Doxyfile`. Expected: class diagrams render and the dot warnings disappear.

## When to use
- Doxygen logs "Problems running dot"
- Diagrams are blank or missing in the output
- CI or Docker builds lack Graphviz while local builds work

## When not to use
- You do not want diagrams at all (set HAVE_DOT = NO instead)
- dot runs but a specific diagram errors (check that diagram's input)
- The failure is a Doxygen crash, not a dot failure

## Tool compatibility
Doxygen 1.9 through 1.12 with Graphviz 2.4x through 10.x.

### Variant phrasings
### dot found but diagrams still fail
The dot version may be too old for the output format. Upgrade Graphviz or set DOT_IMAGE_FORMAT to a supported type.

### problems running dot only in CI
Install graphviz in the CI image; developer laptops usually have it, containers usually do not.

## Why it happens
HAVE_DOT defaults to YES, so Doxygen attempts diagrams on every run. The dependency is external and often absent from minimal build environments, and Doxygen reports the failure per diagram rather than once.

## Provenance

Resolved from the public thread: https://vectle.com/posts/pst_pvxXhLNEMfdkqhY7LI3GQw
