Skip to content

Installation

Felix Uhle edited this page Oct 24, 2025 · 32 revisions

This guide provides step-by-step instructions for installing prolead, including all required dependencies.


📥 Clone the Repository

Before proceeding, clone the prolead repository:

git clone https://github.com/ChairImpSec/PROLEAD

If Git is not installed on your system, install it! On apt-based systems (e.g. Ubuntu) you can do that with:

apt-get install git

🛠️ Installation Methods

Recommended: Using Nix

We officially support installation via the Nix package manager.

Install Nix

If Nix is not installed, follow the official installation guide.

  • Multi-user installation is recommended if your system meets the requirements.
  • Single-user installation is also supported.

Tip

For comparison between the both provided installation methods we refer to the official NixOS download page.

Install Prolead Executable (for User)

To install the latest release (v3.1.0) globally:

nix-env -i -f default.nix

Development Shell

To install dependencies in a development shell (recommended for development):

nix-shell

Inside the Nix shell, build the latest development version:

make release

Important

Ensure that your package metadata is up-to-date:

nix-channel --update

Older versions may cause problems.


🚀 Execution

After installation, run prolead from your terminal:

PROLEAD

It will automatically search for the following files in your current directory:

  • design.v
  • config.json
  • libs/nang45.json These files are used as a default to perform an evaluation.

For usage and manual file path specification, see the Quickstart Wiki.


🗑️ Uninstallation

To remove PROLEAD:

nix-env --uninstall prolead-v3.1.0
nix-collect-garbage

⚠️ Manual Installation (Not Recommended)

This method is tested on Ubuntu 24.04 (WSL 2). Package versions may vary on other distributions.

Note

We do not offer support for this manual installation method.

Install Required Packages

Ensure the following are installed:

  • g++ (>=10.0.0)
  • GNU Make
  • pkg-config
  • Python 3

To install these dependencies on Ubuntu, run:

apt-get update
apt install g++ make pkg-config python3-dev

Install Boost (Required)

The required Boost libraries can be installed using:

apt-get install libboost-dev libboost-python-dev libboost-filesystem-dev libboost-program-options-dev

Important

Ensure all Boost packages have the same version (>= 1.75). We tested with version 1.83, but other versions may work. If using a different Boost version, update the -lboost_python flag in the Makefile.

Install Flint (Required)

Install the Flint library using:

apt-get install libflint-dev

Install the ARM GCC Toolchain (Optional)

If you need the software version of prolead that compiles C code into ARM assembly, install the ARM GCC toolchain:

apt-get install gcc-arm-none-eabi

Build

Navigate to the prolead directory and build:

make release

Execute

Once the installation is complete, you can execute prolead by simply typing:

./release/PROLEAD

This will start the default evaluation specified in design.v and config.json.

Support

For issues or questions, refer to the PROLEAD Wiki or open an issue on GitHub.

Clone this wiki locally