Reference implementation of the UAVCAN protocol stack.
Documentation
- UAVCAN specification
- Libuavcan overview
- List of platforms officially supported by libuavcan
- Libuavcan tutorials
Library development
Despite the fact that the library itself can be used on virtually any platform that has a standard-compliant C++03 or C++11 compiler, the library development process assumes that the host OS is Linux.
Prerequisites:
- Google test library for C++ - gtest
- C++03 and C++11 capable compiler with GCC-like interface (e.g. GCC, Clang)
- CMake 2.8+
- Optional: static analysis tool for C++ - cppcheck
Building the debug version and running the unit tests:
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug
makeTest outputs can be found in the build directory under libuavcan.
Contributors, please follow the Zubax Style Guide.
Submitting a coverity build
First, get the Coverity build tool. Then build the library with it:
export PATH=$PATH:<coverity-build-tool-directory>/bin/ mkdir debug && cd debug cmake <uavcan-source-directory> -DCMAKE_BUILD_TYPE=Debug cov-build --dir cov-int make -j8 tar czvf uavcan.tgz cov-int
Then upload the resulting archive to Coverity.