- 1. 概要
- 2. レジストリ
- 3. コード取得(ダウンロード)
- 4. インストール
- 5. 動作確認
1. 概要
ここからが、「ROS2」本体のようです。
本ページは、下記のサイトを参考にさせていただきました。
「Windows11 に ROS2 をインストールしてみた #環境構築」
「windowsでのインストール方法 - ROS学習用資料」
「Issue: Failed to install package `mimick_vendor` (ROS2 Humble) · Issue #1368 · ros2/ros2 · GitHub」
2. レジストリ
後で必要になることなので、ここであらかじめやっておくことがあります。
ここは、参考サイトのお世話になりました。
参考サイトの記事をかいつまんで説明すると。
「Windows のパス文字数の制限が 256 で、その限界を超えているため、エラーが発生する」そうであります。
で、その壁をやぶるには。
「Power Shell」を管理者権限で開いて、下記のコマンド一発。
New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force
これで、パス文字数の制限を破るそうです。
こんな出力がありました。
レジストリをいじっているわけですな。
LongPathsEnabled : 1
PSPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
PSParentPath : Microsoft.PowerShell.Core\Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
PSChildName : FileSystem
PSDrive : HKLM
PSProvider : Microsoft.PowerShell.Core\Registry
ここでいったん、念のため、再起動しておきます。
3. コード取得(ダウンロード)
ここ、当初は、本家に従って、コマンドでインストールしようとしていたのですが。
何度やっても失敗するので、参考サイトの手順でやることにしました。
下記のサイトへ行って。
「Releases · ros2/ros2」
「ros2-jazzy-20240919-windows-release-amd64.zip」をダウンロードします。

リリースは、どんどん変わるようなので、その時の最新リリースをダウンロードすべきかと思います。
4. インストール
インストールというほどのこともない。
解凍するだけです。
ダウンロードした。
ros2-jazzy-20240919-windows-release-amd64.zip
の中身は。
となっています。
ros2-windows
というフォルダをなるべく「Ubuntu」に合わせて。
C:\ros2_jazzy
として、展開します。
5. 動作確認
展開した環境で、動作確認します。
「x64 Native Tools Command Prompt for VS 2019」を2つ開きます。
それぞれ、「Publisher」「Subscriber」として使用するものとして・・・。
両方のプロンプトで。
call C:\ros2_jazzy\local_setup.bat
ここで。
"[rti_connext_dds_cmake_module][warning] RTI Connext DDS environment script not found (\resource\scripts\rtisetenv_x64Win64VS2017.bat). RTI Connext DDS will not be available at runtime, unless you already configured PATH manually."
てな、「warning」が表示されますが、動作上問題はないようです。
「Publisher」側で。
ros2 run demo_nodes_cpp talker
「Subscriber」側で。
ros2 run demo_nodes_py listener
双方で、下記のようなダイアログが表示されます。
(プログラム名等は、それぞれ異なります)
「許可」

「Publisher」側の表示が。
[INFO] [1732835944.678745400] [talker]: Publishing: 'Hello World: 1'
[INFO] [1732835945.723748700] [talker]: Publishing: 'Hello World: 2'
[INFO] [1732835946.775586000] [talker]: Publishing: 'Hello World: 3'
・・・ 略 ・・・
[INFO] [1732835966.148219500] [talker]: Publishing: 'Hello World: 20'
[INFO] [1732835967.410755800] [talker]: Publishing: 'Hello World: 21'
[INFO] [1732835968.687033600] [talker]: Publishing: 'Hello World: 22'
[INFO] [1732835969.957804000] [talker]: Publishing: 'Hello World: 23'
[INFO] [1732835971.234210700] [talker]: Publishing: 'Hello World: 24'
[INFO] [1732835972.498018100] [talker]: Publishing: 'Hello World: 25'
[INFO] [1732835973.775641400] [talker]: Publishing: 'Hello World: 26'
[INFO] [1732835975.052248000] [talker]: Publishing: 'Hello World: 27'
「Subscriber」側の表示が。
[INFO] [1732835967.458763600] [listener]: I heard: [Hello World: 21]
[INFO] [1732835968.692860600] [listener]: I heard: [Hello World: 22]
[INFO] [1732835969.962408700] [listener]: I heard: [Hello World: 23]
[INFO] [1732835971.244578600] [listener]: I heard: [Hello World: 24]
[INFO] [1732835972.502652300] [listener]: I heard: [Hello World: 25]
[INFO] [1732835973.782728800] [listener]: I heard: [Hello World: 26]
[INFO] [1732835975.058716600] [listener]: I heard: [Hello World: 27]
動作したので、これでインストールとしては、完了ということになります。
|