Linux
Ubuntu
ROS2

ubuntu18.04にROS2 crystalをインストールしたがcolconが使えない

せしまるです。

2018年最後にROS2の新しいバージョンがリリースされていたのでインストールしてみました。

試してみたのはubuntu16.04と18.04です。

ubuntu16.04

debianパッケージからインストールはできないのでソースからビルドします。
これについては以前書いた記事ubuntu16.04にROS2 Bouncyをインストールするとほとんど同じです。

異なる点は依存関係のインストール部分です。

console
$ sudo rosdep init
$ rosdep update
# --rosdistroの後がcrystalになる.
$ rosdep install --from-paths src --ignore-src --rosdistro crystal -y --skip-keys "console_bridge fastcdr fastrtps libopensplice67 libopensplice69 python3-lark-parser rti-connext-dds-5.3.1 urdfdom_headers"

その他の部分はあまり変更はありません。

ubuntu18.04

こちらはdebianパッケージからインストールできます。
インストール方法は公式サイトをご覧ください。

さて本題ですが、インストール後に動作テストとしてdemoノードを動かしてみましたが、こちらは問題なく動きます。

console
# publish側
$ ros2 run demo_nodes_cpp talker

# subscribe側
$ ros2 run demo_nodes_py listener

じゃあcolconビルドも動くだろうと思ってROS 2のワークスペース:colconとパッケージに書いてある手順で、サンプルを取得しいざビルド!

console
$ colcon build
colcon: コマンドが見つかりません

なんでじゃーと思いつついろいろ調べてみるも、リリースされたばっかりなのか情報がない('ω')
とりあえず現状はcolconが使えない状態です。
気になるのはソースからビルドしたときとディレクトリ構成が異なることですかね…。

調査はしていくつもりですが、この記事を読んで「これについての情報知ってるよ!」っていう方がおりましたらコメントいただけると幸いですm(_)m

何かわかり次第追記していきます。

2019/01/09追記
この記事書いてからすぐに発見した悲しい事実。
colconなどはros2とは別にインストールする必要があるみたいです。
ソースからビルドするときにインストールしてたじゃねぇか

console
$ sudo apt install python3-colcon-common-extensions

これでインストールできます('_')
コマンドたたいても見つかりませんなんて言われません。