Skip to content

環境構築#

パッケージのインストール#

LTTng のインストール 詳細は LTTng の公式ドキュメント を参照。

sudo apt-add-repository ppa:lttng/stable-2.12
sudo apt-get update
sudo apt-get install lttng-tools lttng-modules-dkms liblttng-ust-dev
sudo apt-get install python3-babeltrace python3-lttng

ROS 2 galactic のインストール、依存パッケージのインストール。 詳細は ROS2 公式ドキュメント を参照。

sudo apt update && sudo apt install -y \
  build-essential \
  cmake \
  git \
  python3-colcon-common-extensions \
  python3-flake8 \
  python3-pip \
  python3-pytest-cov \
  python3-rosdep \
  python3-setuptools \
  python3-vcstool \
  wget

python3 -m pip install -U \
  flake8-blind-except \
  flake8-builtins \
  flake8-class-newline \
  flake8-comprehensions \
  flake8-deprecated \
  flake8-docstrings \
  flake8-import-order \
  flake8-quotes \
  pytest-repeat \
  pytest-rerunfailures \
  pytest \
  setuptools

sudo apt install ros-galactic-desktop

ros2 trace 関連のパッケージをインストール

sudo apt install -y \
  ros-galactic-ros2trace \
  ros-galactic-ros2trace-analysis \
  ros-galactic-tracetools \
  ros-galactic-tracetools-analysis \
  ros-galactic-tracetools-launch \
  ros-galactic-tracetools-read \
  ros-galactic-tracetools-test \
  ros-galactic-tracetools-trace

caret の依存パッケージをインストール

sudo apt update && sudo apt install -y \
  graphviz \
  graphviz-dev

python3 -m pip install -U \
  pytest-mock \
  pybind11 \
  pandas \
  bokeh \
  jupyterlab \
  graphviz

# julyterlabのインストール時に[ImportError: The Jupyter Server requires tornado >=6.1.0]と出る場合は以下を実行すること
# pip install tornado --upgrade

CARET のビルド#

mkdir -p ~/ros2_caret_ws/src
cd ~/ros2_caret_ws

wget https://raw.githubusercontent.com/tier4/CARET_doc/main/caret.repos
vcs import src < caret.repos --recursive

rosdep install \
  --from-paths src --ignore-src \
  --rosdistro galactic -y \
  --skip-keys "console_bridge fastcdr fastrtps rti-connext-dds-5.3.1 urdfdom_headers"

# [ERROR: the following packages/stacks could not have their rosdep keys resolved] と出る場合は、以下を試すこと
# rosdep init
# rosdep update
source /opt/ros/galactic/setup.bash

# フォークしたパッケージのヘッダーファイルを使用させるためのシンボリックリンクを作成
ln -sf ~/ros2_caret_ws/src/ros-tracing/ros2_tracing/tracetools/include/tracetools ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp/include/
ln -sf ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp_action/include/rclcpp_action ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp/include/
ln -sf ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp_components/include/rclcpp_components/ ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp/include/
ln -sf ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp_lifecycle/include/rclcpp_lifecycle/ ~/ros2_caret_ws/src/ros2/rclcpp/rclcpp/include/

# CARETのビルド
colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=off  --symlink-install

ros2 tracing が有効になっていることを確認

$ source ~/ros2_caret_ws/install/local_setup.bash
$ ros2 run tracetools status
Tracing enabled
Back to top