LICENSE
GNU AFFERO GENERAL PUBLIC LICENSE Version 3
Causal is a runtime written in C++ dedicated to make aspects of information interact in frame of a selfsynchronizing non linear system.
causal-rt.org
Get
git clone --recurse-submodules -j8 https://git.tuxfamily.org/causal/causal-cpp.git
cd causal-cpp
For building examples please see CI/CD
Requirements (Debian/Parrot)
sudo apt install libboost-dev libboost-stacktrace-dev libmsgpack-dev nlohmann-json3-dev liblmdb-dev libgtest-dev libgmock-dev openssl libssl-dev libopendht-dev
Optional (Debian/Parrot)
# for GTK support
sudo apt install libgtkmm-3.0-dev
# for Qt5 Quick support
sudo apt install qtbase5-dev qtdeclarative5-dev qtquickcontrols2-5-dev qml-module-qtquick2 qml-module-qtquick-controls qml-module-qtquick-controls2
# for Doxygen build
sudo apt install doxygen graphviz
Build
# download and install android dependencies (NDK, SDK)
./install.sh android
# download and install cmake 3.21.3
# required for building android version if systems cmake <3.21
./install.sh cmake
# download and build dependencies into ./contrib/x86_64-linux-gnu
# not required when all requirements are provided by system
# contrib system does not provide GTK libraries why causal GTK bindings will not get built
./build.sh dep
# OR
# download and build dependencies for android into ./contrib/aarch64-linux-android
./build.sh depandroid
# you could either use complete builds
## configure and build for linux x64 using provided contrib build and gcc
./build.sh linux_gcc
## OR
## configure and build for linux x64 using provided contrib build and clang
./build.sh linux_clang
## OR
## configure and build for android
./build.sh android
# OR for development you could use separate build steps
## configure for gcc debug build using requirements provided by system
./configure.sh gcc_debug
## OR
## configure for clang release build using requirements provided by system
./configure.sh clang_release
## build
./build.sh
## generate doxygen documentation
./build.sh doc
Compiler Notes
GCC >= 10 and Clang >= 11 are supported.