blueworkforce / Bluezero
Projects that are alternatives of or similar to Bluezero
BlueZero v1
BlueZero (in short, "B0") is a cross-platform middleware which provides tools for interconnecting pieces of software running in multiple threads, processes or machines.
It has some similarities with ROS, although it only focuses on providing communication paradigms (client/server and publisher/subscriber) and message transport (based on ZeroMQ), while being agnostic to message serialization format or common protocols and data structures.
Documentation
See the generated docs/index.html
for the documentation.
License
See LICENSE.md.
Dependencies
Required Libraries
- ZeroMQ v4.1+
- Protocol Buffers v2.6+
- Boost v1.54+
Optional Libraries
- zlib (for compressing payloads)
- lz4 (for compressing payloads)
- Doxygen (for generating documentation)
- Graphviz (for generating documentation)
- mscgen (for generating documentation)
Ubuntu 16
Install the following apt packages:
- libprotobuf-dev
- protobuf-compiler
- libzmq3-dev
- libboost-all-dev
Ubuntu 14
Install the following apt packages:
- libboost-all-dev
The apt packages for Protobuf and ZeroMQ from apt repository are too old. Compile and install them from git repositories:
macOS (homebrew)
Install the following:
- zeromq
- protobuf
- boost
- lz4
Compiling
git clone --branch v1 --recursive https://github.com/BlueWorkforce/bluezero
cd bluezero
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Debug -DBUILD_GUI=ON -DBUILD_EXAMPLES=ON ..
make
Optionally, generate the documentation (requires Doxygen, Graphviz and mscgen installed):
make doc
Optionally, run unit tests:
make test