SENSR SDK depends on Websocket and Protobuf (tested with 3.11.4).
You can install prebuilt binaries or build from source as following.
Protobuf (3.11.4) from source:
sudo apt-get install autoconf automake libtool curl make g++ unzip
curl -OL https://github.com/protocolbuffers/protobuf/releases/download/v3.11.4/protobuf-cpp-3.11.4.zip
unzip protobuf-cpp-3.11.4.zip
rm protobuf-cpp-3.11.4.zip
cd protobuf-3.11.4
./autogen.sh
./configure CXXFLAGS=-fPIC
make
make check
sudo make install
sudo ldconfig
Update submodule:
git submodule update --init --recursive
Make sure you have the listed dependencies installed:
sudo apt-get install autoconf automake libtool curl make g++ unzip cmake libssl-dev libz-dev
Build SENSR SDK:
mkdir build
cd build
cmake ..
make
sudo make install
Or you can simply run build_sdk.sh from the root source folder.
You can build the two samples separately with their own cmake config:
mkdir build_console
cd build_console
cmake ../samples/console_output
make
Or you can simply run build_console_output.sh from the root source folder.
console_output_sample takes below arguments. arg[1] : ip address of SENSR program running machine arg[2]-[5] : sample types. (zone object point time)
./build_console/console_output_sample localhost zone
WSS can be used if you need secure output communication.
You can enable WSS by passing the certificate key path when you create a Client
instance.
sensr::Client client(address, "$HOME/seoulrobotics/keys/sensr-ca.crt");