Skip to content

Latest commit

 

History

History
53 lines (38 loc) · 3.9 KB

build_sw.md

File metadata and controls

53 lines (38 loc) · 3.9 KB

Building the Software Packages

There are many ways to build the software packages. The easiest is to use the VS.Code Dev Container configurations that are included in the repository.

VS.Code Development Container Approach

  • Ubuntu 20.04 (AMD64) + ROS2 Foxy for building packages for original DeepRacer
  • Ubuntu 22.04 (AMD64) + ROS2 Humble
  • Ubuntu 22.04 (ARM64) + ROS2 Humble for Raspberry Pi4.

Opening VS.Code will prompt you if you want to open the DevContainer. It will require Docker to be installed on your computer, Windows or Linux should be supported. To keep the bash history between sessions run docker volume create deepracer-ros-bashhistory before starting the container.

Running the ARM64 container on a normal x86 computer will require enabling cross-compilation in Docker:

    docker run --privileged --rm tonistiigi/binfmt --install all

The cross-compiled container uses qemu and is quite a bit slower than a native container.

Once DevContainer is runnning (first build might take a while) then packages can be installed with:

    ./build_scripts/build-core.sh

DEB packages can be created with:

    ./build_scripts/build-packages.sh

The packages will be created in the dist/ folder.

Dependencies

During installation a set of external packages are downloaded in the src/ directory. These are primarily the official AWS DeepRacer packages as well as their dependencies, which will be patched as part of the build process.

Package Description
aws-deepracer-camera-pkg Camera package for AWS DeepRacer
aws-deepracer-ctrl-pkg Control package for AWS DeepRacer
aws-deepracer-device-info-pkg Device info package for AWS DeepRacer
aws-deepracer-i2c-pkg I2C package for AWS DeepRacer
aws-deepracer-inference-pkg Inference package for AWS DeepRacer
aws-deepracer-interfaces-pkg Interfaces package for AWS DeepRacer
aws-deepracer-model-optimizer-pkg Model optimizer package for AWS DeepRacer
aws-deepracer-navigation-pkg Navigation package for AWS DeepRacer
aws-deepracer-sensor-fusion-pkg Sensor fusion package for AWS DeepRacer
aws-deepracer-servo-pkg Servo package for AWS DeepRacer
aws-deepracer-status-led-pkg Status LED package for AWS DeepRacer
aws-deepracer-systems-pkg Systems package for AWS DeepRacer
aws-deepracer-usb-monitor-pkg USB monitor package for AWS DeepRacer
aws-deepracer-webserver-pkg Webserver package for AWS DeepRacer
async_web_server_cpp Async web server for C++
web_video_server Web video server
rplidar_ros RPLIDAR ROS package
aws-deepracer-launcher Launcher package for AWS DeepRacer
larsll-deepracer-logging Logging package for AWS DeepRacer