#!/usr/bin/env bash set -e echo "▶ Setting up tracing overlay workspaces" ############################################################################### # 0. fresh terminal ############################################################################### source /opt/ros/foxy/setup.bash ############################################################################### # 1. build the tracing stack only (workspace: trace_ws) ############################################################################### mkdir -p ~/trace_ws/src && cd ~/trace_ws/src git clone -b iron git@github.com:ros2/ros2_tracing.git # ament will generate tracetools_config.h with TRACEPOINTS enabled by default cd ~/trace_ws colcon build --symlink-install --cmake-args -DBUILD_TESTING=OFF # make the new tracetools *override* the distro one for everything we compile source install/setup.bash echo "overlay order ✔ (tracetools version = $(pkg-config --modversion tracetools))" ############################################################################### # 2. build rclcpp, rcl, rmw… against that new tracetools (core_ws) ############################################################################### mkdir -p ~/core_ws/src && cd ~/core_ws/src git clone -b iron git@github.com:ros2/rosidl_dynamic_typesupport.git git clone -b iron git@github.com:ros2/rclcpp.git git clone -b iron git@github.com:ros2/rcl.git git clone -b iron git@github.com:ros2/rmw.git git clone -b iron git@github.com:ros2/rmw_fastrtps.git # add any other core packages you really need (rclcpp_action, rclcpp_components…) cd ~/core_ws colcon build --symlink-install --cmake-args -DBUILD_TESTING=OFF ############################################################################### # 3. use it ############################################################################### source install/setup.bash # rclcpp, rcl… now come from the overlay echo "overlay order ✔ (rclcpp version = $(pkg-config --modversion rclcpp))" echo "Source the following in your terminal to use the new tracing stack:" echo "~/trace_ws/install/setup.bash" echo "~/core_ws/install/setup.bash"