Skip to content

Prerequisites

Host OS

Linux. The package installation commands below are Ubuntu-based. I also have a BoxLambda setup on Fedora and Arch.

Vivado

Vivado ML Edition V2025.1, Linux version:

https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vivado-design-tools/2025-1.html

Make sure you also install your Arty A7 board files. Digilent has excellent instructions for installing Vivado and Digilent board files:

https://digilent.com/reference/programmable-logic/guides/installing-vivado-and-vitis

Git

sudo apt-get install git

GNU Make

Version 4.2.1 or later.

sudo apt-get install make

CMake

Version 4.0.0 or later.

On Ubuntu, follow these instructions: https://apt.kitware.com/

Make sure that the correct CMake version is first in your PATH. The Vivado /tools/Xilinx/Vivado/2023.1/settings64.sh script adds an old version of CMake to your path. I override that by re-adding /usr/bin to the front of the PATH after sourcing the Vivado script:

source /tools/Xilinx/Vivado/2023.1/settings64.sh
export PATH=/usr/bin:$PATH

Ninja and Meson

Ninja and Meson are required to build the Picolibc library.

sudo apt-get install ninja-build
sudo apt-get install meson

GDB (Multiarch)

For debug access to BoxLambda.

sudo apt install gdb-multiarch

On Arch Linux, the regular gdb package includes multiarch support, so you should just install gdb instead of gdb-multiarch.

Mtools

Utilities such as mcopy to access FAT disks without mounting them. Used to create RAM disks for BoxLambda.

sudo apt install mtools

Dosfstools

Utilities such as mkfs.fat to create FAT disk images. Used to create RAM disks for BoxLambda.

sudo apt install dosfstools

Additional Prerequisites for Building and Running the Verilator Test Cases

SDL2

If SDL2 is installed, the vera_integrated_test Verilator simulation test cases will use it to display the VERA graphics core VGA output. If SDL2 is not installed, the test will still run, using the same pass/fail criteria, but the output will not be rendered to a window.

https://wiki.libsdl.org/SDL2/Installation

Chromaprint

Chromaprint is needed to run Verilator simulation test cases involving the YM2149 PSG sound core.

sudo apt-get install libchromaprint-tools

Tools you probably don't need

Gforth

Gforth is required if you would like to tinker with the usb_hid_device firmware.

sudo apt-get install gforth

Perl

Perl is required if you would like to tinker with the usb_hid_host firmware. Your system most likely already has Perl installed. If not:

sudo apt-get install perl.

Hidden Tool Dependencies

The following tools are automatically installed (if not already installed) by sourcing the activate_env.sh script: