-
Notifications
You must be signed in to change notification settings - Fork 23
Dependencies
ID2T is written using Python 3 and C++ 11. The main logic is programmed in Python whereas performance critical components are programmed in C++11. The C++11 module uses the Libtins library. The python and c++ modules interact with each other through the pybind11 library.
ID2T provides a dependency installation script, which is called during the execution of ./build.sh
.
For supported operating systems see Supported Systems.
The following packages/libraries are required to compile the ID2T C++ modules
-
cmake
(minimum version 3.2) g++
-
python
development librariespython-venv
coreutils
-
sqlite
(minimum version 3.0) -
libtins
(minimum version 4.1 plus our patches) boost
gcc
tcpdump
cairo
-
libdnet
(macOS only)
The python packages required to run ID2T can be found here. By default the packages are installed into a python virtual environment by the build script.
If you want run ID2T without using its build system, you can use your preferred package manager to install the packages manually. For example, you can use pip3 (pip for python 3). Install pip3 in ubuntu with apt install python3-pip
and install the packages with sudo pip3 install <packagename>
.
The minimum version stated in the previous requirements are the versions we used in the development of ID2T. Other (older) versions might also work; however, we can neither guarantee nor support them. Furthermore, some compilation scripts would need to be manually modified to accommodate these older versions.