unleashed-firmware/documentation/HowToBuild.md

80 lines
1.7 KiB
Markdown
Raw Normal View History

2022-07-10 03:47:36 +03:00
# How to Build by yourself:
## Clone the Repository
You should clone with
```shell
$ git clone --recursive https://github.com/Eng1n33r/flipperzero-firmware.git
```
## Build with Docker
### Prerequisites
1. Install [Docker Engine and Docker Compose](https://www.docker.com/get-started)
2. Prepare the container:
```sh
docker-compose up -d
```
### Compile everything for development
```sh
docker-compose exec dev ./fbt
```
### Compile everything for release + get updater package to update from microSD card
```sh
docker-compose exec dev ./fbt --with-updater COMPACT=1 DEBUG=0 updater_package
```
Check `dist/` for build outputs.
Use **`flipper-z-{target}-full-{suffix}.dfu`** to flash your device.
If compilation fails, make sure all submodules are all initialized. Either clone with `--recursive` or use `git submodule update --init --recursive`.
2022-07-20 21:57:03 +03:00
# Build on Linux/macOS
2022-07-10 03:47:36 +03:00
Check out `documentation/fbt.md` for details on building and flashing firmware.
2022-07-20 21:57:03 +03:00
### Compile everything for development
2022-07-10 03:47:36 +03:00
```sh
2022-07-20 21:57:03 +03:00
./fbt
2022-07-10 03:47:36 +03:00
```
2022-07-20 21:57:03 +03:00
### Compile everything for release + get updater package to update from microSD card
```sh
./fbt --with-updater COMPACT=1 DEBUG=0 updater_package
```
Check `dist/` for build outputs.
Use **`flipper-z-{target}-full-{suffix}.dfu`** to flash your device.
# Build on Windows
Check out `documentation/fbt.md` for details on building and flashing firmware.
2022-07-10 03:47:36 +03:00
### Compile everything for development
```sh
2022-07-20 21:57:03 +03:00
.\fbt.cmd
2022-07-10 03:47:36 +03:00
```
### Compile everything for release + get updater package to update from microSD card
```sh
2022-07-20 21:57:03 +03:00
.\fbt.cmd --with-updater COMPACT=1 DEBUG=0 updater_package
2022-07-10 03:47:36 +03:00
```
Check `dist/` for build outputs.
Use **`flipper-z-{target}-full-{suffix}.dfu`** to flash your device.