1
0
mirror of https://github.com/rtbrick/bngblaster.git synced 2024-05-06 15:54:57 +00:00
2021-06-02 17:25:59 +02:00

2.4 KiB

Installation

Install Ubuntu

Install dependencies:

sudo apt install -y libssl1.1 libncurses5 libjansson4

Download and install debian package: https://github.com/rtbrick/bngblaster/releases

sudo dpkg -i <package>

This command installs the BNG Blaster to /usr/sbin/bngblaster.

Build from Sources

Dependencies

The BNG Blaster has dependencies to the RtBrick libdict fork (https://github.com/rtbrick/libdict) and the following standard dependencies:

sudo apt install -y cmake \
    libcunit1-dev \
    libncurses5-dev \
    libssl-dev \
    libjansson-dev

Build

Per default cmake (cmake .) will build the BNG Blaster as release version with optimization and without debug symbols.

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make all

Alternative it is also possible to build a debug version for detailed troubleshooting using gdb.

mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Debug ..
make all

There are also CPack files generated which allows to easily generate a debian package by just executing cpack from build directory.

It is also recommended to provide the GIT commit details to be included in the manually build version as shown below:

cmake -DGIT_REF=`git rev-parse --abbrev-ref HEAD` -DGIT_SHA=`git rev-parse HEAD` ..

Example:

$ bngblaster -v
GIT:
  REF: dev
  SHA: df453a5ee9dbf6440aefbfb9630fa0f06e326d44
IO Modes: packet_mmap_raw (default), packet_mmap, raw

Install

Then BNG Blaster can be installed using make install target.

sudo make install

This command installs the BNG Blaster to /usr/local/sbin/bngblaster.

An existing version installed from debian package in /usr/sbin is not automatically replaced or removed here and should be deleted manually before install. Otherwise it might be possible that two versions remain in parallel.

sudo rm /usr/sbin/bngblaster

Build and Run Unit Tests

Building and running unit tests requires CMocka to be installed:

sudo apt install libcmocka-dev

The option BNGBLASTER_TESTS enables to build unit tests.

cmake -DCMAKE_BUILD_TYPE=Debug -DBNGBLASTER_TESTS=ON .
make all
make test

Example

$ make test
Running tests...
Test project
    Start 1: TestProtocols
1/1 Test #1: TestProtocols ....................   Passed    0.00 sec

100% tests passed, 0 tests failed out of 1

Total Test time (real) =   0.00 sec