2.3. Installation

In order to be installed on a system, AFF3CT can either be compiled locally and installed (see From Source), or remotely precompiled versions can be downloaded and installed (see Precompiled Versions.)

2.3.1. From Source

Once AFF3CT has been compiled, it is possible (not mandatory) to install it on your system. On Unix-like systems, traditionally, the fresh build is installed in the /usr/local directory (this is the CMake default installation path). This location can be changed by setting the CMAKE_INSTALL_PREFIX built-in variable with an other path. For instance, to install AFF3CT in the current build:

cmake .. -DCMAKE_INSTALL_PREFIX="install"

This command do not install AFF3CT. It only prepares the project to be installed in the selected location.

2.3.1.1. Makefile Project

To install AFF3CT, call the install target on the current Makefile:

make install

Note

Depending on the chosen CMAKE_INSTALL_PREFIX location, the administrator privileges (sudo) can be required.

2.3.1.2. Visual Studio Solution

In case of a Visual Studio Solution, an INSTALL project is defined and ensures the installation when triggered. This can be done from the Visual Studio IDE or from the command line after calling the %VS_PATH%\VC\Auxiliary\Build\vcvars64.bat batch script (where %VS_PATH% is the location of Visual Studio on your system):

devenv /build Release aff3ct.sln /project INSTALL

2.3.2. Precompiled Versions

2.3.2.1. From AFF3CT website

If you do not plan to modify the AFF3CT source code and you want to use the simulator/library as is, you can download one of the latest builds from the download page of the AFF3CT website. Precompiled binaries are available for the most common operating systems : Windows, macOS and Linux.

2.3.2.2. On Debian / Ubuntu

Each new version of AFF3CT is deployed on PPA repositories for the aptitude package manager. Two different repositories are available. The first one, stable, holds versions that are released after a lot of testing to ensure performance and stability. The second one, dev, holds the latest development versions of AFF3CT.

Select the channel to use (stable or dev, not both!):

# stable
sudo add-apt-repository ppa:aff3ct/aff3ct-stable

# dev
sudo add-apt-repository ppa:aff3ct/aff3ct-dev

Update package list and install:

sudo apt-get update
sudo apt-get install aff3ct-bin aff3ct-doc libaff3ct libaff3ct-dev
  • The package aff3ct-bin contains the bin/, conf/ and refs/ folders.
  • The package aff3ct-doc contains the doc/ folder.
  • The package libaff3ct contains the lib/ folder.
  • The package libaff3ct-dev contains the include/ folder and depends on the libaff3ct package.

Note

Only LTS releases of Ubuntu are officially supported, starting from 16.04. For other releases, you may try to use the pinning method.

2.3.3. Contents

The installed package is organized as follow:

  • bin/

    • aff3ct-M.m.p the AFF3CT executable binary.
  • include/

    • aff3ct-M.m.p/ contains all the includes required by AFF3CT.
  • lib/

    • libaff3ct-M.m.p.a the AFF3CT static library.

    • libaff3ct-M.m.p.so the AFF3CT shared library.

    • cmake/

      • aff3ct-M.m.p/ contains the CMake configuration files required to link with AFF3CT.
  • share/

    • aff3ct-M.m.p

      • conf/ contains some input files to configure the AFF3CT simulator.
      • refs/ many results from AFF3CT simulations.
      • doc/ contains the AFF3CT documentation.

M stands for the major number of the version, m the minor number and p the id of the last patch.