81 lines
1.5 KiB
Markdown
81 lines
1.5 KiB
Markdown
|
|
# Getting Started
|
||
|
|
|
||
|
|
This guide helps you build and run CrossPoint locally.
|
||
|
|
|
||
|
|
## Prerequisites
|
||
|
|
|
||
|
|
- PlatformIO Core (`pio`) or VS Code + PlatformIO IDE
|
||
|
|
- Python 3.8+
|
||
|
|
- `clang-format` 21+ in your `PATH` (CI uses clang-format 21)
|
||
|
|
- USB-C cable
|
||
|
|
- Xteink X4 device for hardware testing
|
||
|
|
|
||
|
|
If `./bin/clang-format-fix` fails with either of these errors, install clang-format 21:
|
||
|
|
|
||
|
|
- `clang-format: No such file or directory`
|
||
|
|
- `.clang-format: error: unknown key 'AlignFunctionDeclarations'`
|
||
|
|
|
||
|
|
Examples:
|
||
|
|
|
||
|
|
```sh
|
||
|
|
# Debian/Ubuntu (try this first)
|
||
|
|
sudo apt-get update && sudo apt-get install -y clang-format-21
|
||
|
|
|
||
|
|
# If the package is unavailable, add LLVM apt repo and retry
|
||
|
|
wget https://apt.llvm.org/llvm.sh
|
||
|
|
chmod +x llvm.sh
|
||
|
|
sudo ./llvm.sh 21
|
||
|
|
sudo apt-get update
|
||
|
|
sudo apt-get install -y clang-format-21
|
||
|
|
|
||
|
|
# macOS (Homebrew)
|
||
|
|
brew install clang-format
|
||
|
|
```
|
||
|
|
|
||
|
|
Then verify:
|
||
|
|
|
||
|
|
```sh
|
||
|
|
clang-format-21 --version
|
||
|
|
```
|
||
|
|
|
||
|
|
The reported major version must be 21 or newer.
|
||
|
|
|
||
|
|
## Clone and initialize
|
||
|
|
|
||
|
|
```sh
|
||
|
|
git clone --recursive https://github.com/crosspoint-reader/crosspoint-reader
|
||
|
|
cd crosspoint-reader
|
||
|
|
```
|
||
|
|
|
||
|
|
If you already cloned without submodules:
|
||
|
|
|
||
|
|
```sh
|
||
|
|
git submodule update --init --recursive
|
||
|
|
```
|
||
|
|
|
||
|
|
## Build
|
||
|
|
|
||
|
|
```sh
|
||
|
|
pio run
|
||
|
|
```
|
||
|
|
|
||
|
|
## Flash
|
||
|
|
|
||
|
|
```sh
|
||
|
|
pio run --target upload
|
||
|
|
```
|
||
|
|
|
||
|
|
## First checks before opening a PR
|
||
|
|
|
||
|
|
```sh
|
||
|
|
./bin/clang-format-fix
|
||
|
|
pio check --fail-on-defect low --fail-on-defect medium --fail-on-defect high
|
||
|
|
pio run
|
||
|
|
```
|
||
|
|
|
||
|
|
## What to read next
|
||
|
|
|
||
|
|
- [Architecture Overview](./architecture.md)
|
||
|
|
- [Development Workflow](./development-workflow.md)
|
||
|
|
- [Testing and Debugging](./testing-debugging.md)
|