- Download and install latest Xcode 11
- Download and install latest Command Line Tools for XCode 11
- Download and install Homebrew
brew install [email protected]
brew install mbedtls --HEAD
brew install wget
brew install qemu
brew install --cask docker
Run docker (Look in Spotlight/Applications folder). This is a one time instruction. Make sure you go to Docker→Preferences→General and check the option → Start Docker Desktop when you log in
make all
./Output/Darwin-x86_64-apple-darwin$(uname -r)/Debug/IP/Applications/Lightbulb.OpenSSL
sudo apt install docker
make TARGET=Linux apps
Run this to create the SD card image (Linux+patches) and a Docker container (your build environment). Make sure that Docker is running before running this setup or it will fail and you will have to start over! This will take about an hour and will stop for input many times. It will also require you to swap the card out twice.
# Run the Docker app. It is required for docker import.
./Tools/raspi_sdcard_setup.sh
make TARGET=Raspi all
If docker doesn't find "dev-test/raspiadk-base", run the sdcard setup and make sure to do the docker import at the end of the script.
After building, run this to install the build products to your RaspPi. (-n
is for the hostname of your RaspPi and -p
is the SSH password; both of these were chosen during the initial raspi_sdcard_setup.sh
install).
./Tools/install.sh \
-d raspi \
-a Output/Raspi-armv6k-unknown-linux-gnueabihf/Debug/IP/Applications/Lightbulb.OpenSSL \
-n raspberrypi \
-p raspberry
Command | Description |
---|---|
make ? |
|
make APPS=? | Space delimited names of the app to compile. Example: make APPS="Lightbulb Lock" Default: All applications |
make BUILD_TYPE=? | Build type:
|
make CRYPTO=? | Supported cryptographic libraries:
make CRYPTO=MbedTLS apps |
make DOCKER=? | Build with or without Docker:
|
make LOG_LEVEL=level |
|
make PROTOCOLS=? | Space delimited protocols supported by the applications:
Example: make PROTOCOLS="IP BLE" Default: All protocols |
make TARGET=? | Build for a given target platform:
|
make USE_DISPLAY=? | Build with display support enabled:
|
make USE_HW_AUTH=? | Build with hardware authentication enabled:
|
make USE_NFC=? | Build with NFC enabled:
|
make USE_WAC=? | Build with WAC enabled:
|