...
Note |
---|
Only follow these instructions if you have already finished the instructions below and are ready to flash |
Info |
---|
While this guide provides instructions for flashing, it's important to note that the execution of scons sim still remains necessary within the Docker environment |
Ensure you are not in the linux environment (Docker environment)
Go to the box repository and start up your python virtual environment by running
source venv/bin/activate
Try running
arm-none-eabi-gcc --version
and look for output. If it says that it cannot findarm-none-eabi-gcc
then runsource ~/.zshrc
If it still doesn’t work, please contact a lead for help
Make the necessary connections you need with the hardware
cd shared/fwxv
then runscons flash --project=[project name]
(If you need some other scons command please reference the build_system.md file)
✨ Guide to setting up dependencies for flashing on M1s
Info |
---|
Note |
Note |
Ensure that these steps, including any future flashing activities, are performed outside the VagrantLinux/Docker environment |
Install package dependencies:
Run this shell script in box directory:
View file name setup.sh This uses virtualenv, a python package manager. (https://docs.python.org/3/library/venv.html )
Install arm-none-eabi-gcc compiler
Download gcc-arm-none-eabi version 9.2.1 which is obtained from https://developer.arm.com/downloads/-/gnu-rm
Move this to your tar file into your box folder and change current directory to box directory
Run this code in the box repository:
View file name m1.sh Run
scons
in the box/shared/fwxv folder to test if building works
For people who care about the step-by-step of the m1.sh:Code Block // Should be in the box repository with .tar.bz2 file tar xzf gcc-arm-none-eabi-9-2019-q4-major-mac.tar.bz2 // move into gcc-arm-none-eabi folder cd gcc-arm-none-eabi-9-2019-q4-major/ // run pwd and copy output into next command pwd // enter pwd output in [pwd input here] (do not include [] braces) // ex. echo 'export PATH="/Users/your-user-name/box/gcc-arm-none-eabi-9-2019-q4-major/bin:$PATH"' >> ~/.zshrc echo 'export PATH="[pwd input here]:$PATH"' >> ~/.zshrc source ~/.zshrc // you may get a permissions issue so we will "unquarantine" (remove quarantine attribute) our files // path to gcc-arm-none-eabi folder can be grabbed by cd gcc-arm-none-eabi-9-2019-q4-major and pwd // ex. xattr -d -r com.apple.quarantine /Users/your-user-name/box/gcc-arm-none-eabi-9-2019-q4-major/ xattr -d -r com.apple.quarantine [path to gcc-arm-none-eabi folder] // check arm-none-eabi-gcc version // Should get output similar to: /* * arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 9-2019-q4-major) 9.2.1 20191025 (release) [ARM/arm-9-branch revision 277599] * Copyright (C) 2019 Free Software Foundation, Inc. * This is free software; see the source for copying conditions. There is NO * warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. /* arm-none-eabi-gcc --version // To test if it works, run scons to see if everything compiles correctly for you scons
...