Skip to content

klepsydra-technologies/kpsr-core

Repository files navigation

Build codecov

Installation Instructions

System dependencies

  • Ubuntu 18.04 or above
  • CMake 3.5.1 or above
  • gcc for C++11 5.4.0 or above
  • Google benchmark (optional)
  • Python 3.6 or above
  • ZMQ 3 or above (optional)
  • Doxygen (optional)
  • Moxygen (optional)

Dependencies installed by kpsr-core

System requirements

sudo apt-get install build-essential git cmake python3-pip

Installation

Given $KLEPSYDRA_HOME, for example $HOME/klepsydra:

cd $KLEPSYDRA_HOME
git clone https://github.com/klepsydra-technologies/kpsr-core
cd kpsr-core
git submodule update --init
mkdir build && cd build
cmake ..
make -j$(nproc)
make test
sudo make install

This will install the klespydra core in default locations:

  • /usr/local/include/klepsydra for kpsr-core include files
  • /usr/local/include/kpsr_3parties for third party dependencies necessary for Klepsydra package
  • /usr/local/lib/ for kpsr-core libraries

The cmake has the following options:

  • -DCMAKE_INSTALL_PREFIX=<path> for specifying the Klepsydra installation location (/usr/local by default)
  • -DKPSR_WITH_DOXYGEN=true to allow generation of documentation
  • -DGTEST_PATH=<path> for the Google test path (default is ./thirdparties/googletest/)
  • -DTHIRDPARTIES_PATH=<path> for the ConcurrentQueue and Cereal path (default is ./thirdparties/)
  • -DKPSR_WITH_ZMQ=true for building the ZeroMQ binding
  • -DKPSR_TEST_PERFORMANCE=true for building the performance tests. Needs Google benchmark
  • -DKPSR_WITH_SOCKET=true for building SOCKET binding
  • -DKPSR_ENABLE_EXAMPLES=true for building examples files (default false)
  • -DKPSR_ENABLE_TESTS=true for building unit tests (default true)
  • -DMINIMAL_BUILD=true no examples or tests (default false)
  • -DKPSR_COMPILE_SPDLOG=true use compiled version of spdlog if true (default), else use header only version by copying the headers

Example

cmake -DKPSR_WITH_SOCKET=true ..

Documentation generation

Requires moxygen and cmake -DKPSR_WITH_DOXYGEN=true option.

make doc

License

© Copyright 2019-2031, Klepsydra Technologies AG, all rights reserved. Licensed under the terms in LICENSE.md

This software and documentation are Copyright 2019-2031, Klepsydra Technologies AG Limited and its licensees. All rights reserved. See license file for full copyright notice and license terms.

Contact

https://www.klepsydra.com [email protected]