top of page
検索

✅【トラブル解決】ROS2 humbleで「spdlog.soのImportError」が出る場合の対処法(Isaac Simとの共存環境)

  • 執筆者の写真: M K
    M K
  • 2024年10月2日
  • 読了時間: 2分

更新日:2025年5月7日



■ 実行環境

  • OS:Ubuntu 22.04.5 LTS

  • ROS2:humble

  • 他ソフトウェア:NVIDIA Isaac Sim

🛠️ 起動エラーの概要

ROS2 humble および Isaac Sim をインストールした環境で、ROS2 単体を起動しようとしたところ、以下のようなエラーが発生することがあります。


ImportError: /opt/ros/humble/lib/librcl_logging_spdlog.so: undefined symbol: ZN6spdlog7details7logmsgC1...

これは librcl_logging_spdlog.so のライブラリが破損しているか、互換性のない spdlog バージョンを読み込んでいることが原因で発生します。


💡 原因とポイント

このエラーは通常、ROS2の再インストールで解消されることが多いですが、Isaac Simをインストールしている場合、Isaac Sim にバンドルされた ROS2 (humble) のライブラリが先に読み込まれることがあります。

つまり、Isaac Sim 側の ROS2 が壊れている可能性があるのです。



🧩 解決策:Isaac Sim の ROS2 を読み込まないようにする


Isaac Sim のチュートリアルに従って環境構築をしている場合、~/.bashrc に以下のようなエクスポート設定が追加されているはずです。


source /path/to/isaac_sim/ros2_workspace/install/setup.bash

これをコメントアウト(または削除)して、Isaac Sim 側の ROS2 を読み込まないようにしましょう。


✔ 手順

ターミナルで .bashrc を編集

vi ~/.bashrc

以下のような行を見つけて、先頭に # を付けてコメントアウト

# source ~/isaac_sim/ros2_workspace/install/setup.bash

.bashrc を保存して閉じる

ターミナルを再起動、または .bashrc を再読み込み

source ~/.bashrc

🚀 結果:ROS2が正常起動

上記の変更後、ターミナルで ros2 コマンドを実行してもエラーが出ず、正常に起動するようになります。


✉️ 補足

Isaac SimとROS2を同時に利用する環境では、環境変数の管理が非常に重要です。プロジェクトごとに仮想環境やコンテナを活用するのも有効な選択肢です。

最新記事

すべて表示
消費税の減免

はじめに 三期目に入ると消費税の減免が終了する。これは固定費・変動費の双方に確実なインパクトを与えるため、早めの収支設計の見直しが不可欠だ。本記事では、減免終了を前提に実施した具体的な対策と、今後の運営方針を整理する。 消費税減免終了を前提にした収支設計 まず行ったのは、支出構造の棚卸しである。ツール、外注、サブスクリプション、通信費などを洗い出し、「売上に直結しないもの」「代替可能なもの」を徹底

 
 
 
第一期目を振り返る

【今期の主な実績と振り返り】 2024年8月8日の法人設立から約10か月が経過し、以下の実績を積み上げてきました。 売上高:500万円超 法人口座開設(メガバンク等) 政策金融公庫より融資獲得 各種団体への加入:ソフトウェア協会、中小企業同友会、商工会議所...

 
 
 

コメント


bottom of page