50 lines
2.2 KiB
Bash
Executable file
50 lines
2.2 KiB
Bash
Executable file
#!/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"
|