Update description of the build process

vintagepc/version-and-build
D.R.racer 2021-04-15 07:38:43 +02:00 committed by DRracer
parent 174a9619a3
commit 28130a93bb
1 changed files with 23 additions and 10 deletions

View File

@ -1,27 +1,40 @@
# Prusa-Firmware-MMU-Private
## How to prepare build env and tools
Use tools from the Buddy FW and a separate Atmel AVR GCC 5.4.
As the first step extract the AVR-GCC to some dir, e.g. `/home/user/AVRToolchainMMU/avr8-gnu-toolchain-5.4.0`
Extract the AVR-GCC to some dir, e.g. `/home/user/AVRToolchainMMU/avr8-gnu-toolchain-5.4.0`
Add `/home/user/AVRToolchainMMU/avr8-gnu-toolchain-5.4.0/bin` to your `PATH`.
```
mkdir .dependencies
cd .dependencies
ln -s ../../STM32Toolchain/clang-format-9.0.0-noext
ln -s ../../STM32Toolchain/cmake-3.15.5
ln -s ../../STM32Toolchain/ninja-1.9.0
ln -s ../../AVRToolchainMMU/avr8-gnu-toolchain-5.4.0
mkdir gcc-avr-5.4.0
cd ..
utils/bootstrap.py
```
## How to build the preliminary project so far:
Please make sure you have your `cmake`, `clang-format` and `ninja` in path
`bootstrap.py` will now download all the "missing" dependencies into the `.dependencies` folder:
- clang-format-9.0.0-noext
- cmake-3.15.5
- ninja-1.9.0
Note: bootstrap.py will not try to download the AVR-GCC as there is already a directory called
`gcc-avr-5.4.0`. This will be fixed when we find out where to download the correct packages reliably.
## How to build the preliminary project so far:
Now the process is the same as in the Buddy Firmware:
```
utils/build.py
```
builds the firmware.hex in build/mmu_release
In case you'd like to build the project directly via cmake you can use an approach like this:
```
mkdir build
cd build
cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../../cmake/AnyAvrGcc.cmake
cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../cmake/AnyAvrGcc.cmake
ninja
```
Should produce a firmware.hex file
Should produce a firmware.hex file as well.