cROS is a library written in stadard C language that provides a single-thread implementation of the basic features required to implement a ROS (Robot Operating System) node. This ROS node supports the concurrent operation as several:
- Topic subscribers
- Topic Publishers
- Service providers (servers)
- Service callers (clients)
- Parameter subscribers
cROS can run on Linux, OS X and Windows.
On a Linux-based distribution it can be compiled with:
- The GCC compiler
- CMake 2.6 or later
- (Optional) Doxygen
On Windows it can be compiled with Microsoft Visual Studio 15 or later.
On Linux cROS uses CMake, the cross platform build system. To create a build directory an compile the project, type the following commands in a terminal starting from the source root directory:
$ mkdir build
$ cd build
$ cmake ..
$ make
You will find a static library (libcros.a) inside the build/lib directory, and some test executables that makes use of the libcros library inside the build/bin directory. The entrypoint sample to learn how to use cROS is samples/ros_api.c, which shows a non trivial example of a ROS node with publishers/subcribers and calls to ROS services.
If you want to build the create the library documentation, type: (you'll need Doxygen)
$ make docs
You'll find the html documentation inside the docs/html directory. To browse the documentation, open with a web browser the index.html file.
On Windows cROS can be compiled opening the solution file msvs_projects/cros.sln with Microsoft Visual Studio and building the solution.
cROS is licensed under the BSD license. For more licensing options and for paid support please write an email to cros@it-robotics.it.