Fixposition SDK 0.0.0-heads/main-0-g90a51ff
Collection of c++ libraries and apps for use with Fixposition products
|
For building the libraries and apps:
(*) Optional dependencies. Without these some functionality in the libraries and apps is unavailable (compiled out).
For development additionally:
Open the fpsdk.code-workspace, change to one of the provided devcontainers, and in a terminal do:
Docker images are provided that include all the dependencies:
This details the manual setup of the dependencies and building the SDK on a ROS1 system (for example, Ubuntu 20.04 with ROS Noetic). It works similarly for ROS2 (for example, Ubuntu 22.04 with ROS Humble) or non-ROS (for example, Debian Bookworm) based systems. Refer to the Docker configration files and scripts in the docker/ folder on installing the required dependencies.
Setup build system, install dependencies
The exact steps required depend on your system. You'll need the dependencies mentioned above installed system wide or otherwise tell CMake where to find them.
Configure
Additional parameters include (see CMakeList.txt files of the projects for details):
-DCMAKE_BUILD_TYPE=Debug
or -DCMAKE_BUILD_TYPE=Release
(default)-DROS_PACKAGE_PATH=/path/to/ros
(default: auto-detect)-DBUILD_TESTING=OFF
or -DBUILD_TESTING=ON
. The default is to automatically enable testing if a suitable GTest library is found.-DUSE_PROJ=ON
or -DUSE_PROJ=OFF
. The default is to automatically use the PROJ library if a suitable version is foundBuild
Install
Enjoy!
For example:
For example to build the fpsdk_common package (library):
The packages build in a ROS workspace using catkin) (ROS1) resp. colcon (ROS2). For example:
Refer to the various CMakeList.txt files, the CI workflow configuration (.github/workflows/ci.yml
) and the CI script (docker/ci.sh
) for details on how things are done.