Skip to content

conan-io/ros-conan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ros-conan

Conan create ros-kilted License: MIT

Conan recipes for building ROS 2 from source. Pull ROS 2 and all its dependencies with a single conan install, no rosdep, apt, brew or choco required. Works with plain CMake projects and colcon workspaces, on Windows, macOS and Linux.


Prerequisites

  • Install/use Python 3.12 REP-2000 lists the 3.12.3 Python version as the reference version on the Tier 1 platforms.

  • Install Conan 2 in a Python virtual environment:

    python -m venv .venv
    source .venv/bin/activate  # Windows: .venv\Scripts\activate
    pip install conan
    conan profile detect --force

Quick start

git clone https://github.com/conan-io/ros-conan.git
conan remote add ros-conan ./ros-conan --type=local-recipes-index

conan install --requires=ros-kilted/2026.06.17 \
    --profile=ros-conan/profiles/ros \
    --build=missing

ros-kilted and its bundled dependencies resolve from this index. Everything else comes from ConanCenter.

Activate the Conan virtual run environment and verify:

# Linux / macOS
source conanrun.sh
ros2 pkg list
REM Windows
conanrun.bat
ros2 pkg list

Variants

Variant Contents
core rcl, rclcpp, rclpy, rmw, common interfaces. Default.
base Adds tf2, kdl_parser, robot_state_publisher.
desktop Adds rviz2, demo nodes, visualization tools.
desktop_full (WIP) Adds simulation and perception stacks.

To build a different variant, pass the variant option with -o:

conan install --requires=ros-kilted/2026.06.17 \
    --profile=ros-conan/profiles/ros \
    -o ros-kilted/*:variant=desktop \
    --build=missing

Versioning

ros-kilted uses calendar versioning that mirrors the upstream ros/rosdistro sync tag the recipe is pinned to. The Conan version YYYY.MM.DD maps 1:1 to the rosdistro tag kilted/YYYY-MM-DD.

Recipes

Package Description
ros-kilted ROS 2 Kilted built from source as a single package.
orocos_kdl Orocos KDL C++ library.
python_orocos_kdl PyKDL, Python bindings for Orocos KDL.

orocos_kdl and python_orocos_kdl are not in ConanCenter and are required by ros-kilted.

Examples

Example What it shows
consumer_cmake Pure-CMake consumer using rclcpp via CMakeDeps, no colcon needed.
consumer_colcon colcon workspace consuming the ROS runtime from Conan via ROSEnv.
pose_estimation ros-kilted + opencv + tensorflow-lite publishing a skeleton overlay.
consumer_desktop Installs the desktop variant and runs its GUI tooling (rviz2, rqt).

License

MIT, see LICENSE.

About

Build ROS 2 from source and consume it like any other Conan package

Topics

Resources

License

Stars

0 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors