Installation - ChairImpSec/PROLEAD GitHub Wiki
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 --updateOlder 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.vconfig.jsonlibs/nang45.jsonThese 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 Makepkg-configPython 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_pythonflag in theMakefile.
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.