Contents
概要
2019年11月にROS 2 Eloquent Elusorがリリースされました。
アップデート内容の例を以下にあげます。
- XML記法でのlaunch対応
- geometry_msgs/msg/Quaternion.msgのwのデフォルト値が1になった(←地味に嬉しい)
- rvizで表示可能なメッセージが増えた
- Mac OS Xのサポート対象バージョンの変更
実際に使用してみたところ、setup.zsh実行速度が格段に上がっています。
Dashingでは3〜5秒程度読み込みに時間がかかっており、~/.zprofileで自動ロードさせるのが躊躇われる遅さでした が、Eloquentでは1秒以下になっています。(※Catalinaではデフォルトのシェルがbashからzshに変更になりました!)
これが改善されるだけでも開発中のストレスが軽減されるので、Eloquentに乗り換えることにしました。
また、Mac OS XのサポートしているバージョンがDashingではSierraでしたが、EloquentではMojaveに変わっています。
(最新のCatalinaはサポートしてくれないんですね…)
(2020年1月1日時点)
下記の環境でEloquentをインストールしました。
- iMac 27-inch (2019)
- Mac OS X Catalina 10.15.2(19C57)
基本的には
- brew update & brew upgradeで最新の状態にする。
- Eloquentのバイナリパッケージをインストールする。
ただしsetup.bashではなくsetup.zshになる点に注意! - assimpのバージョンを4.1にダウングレードする。
の手順でOKです。
assimpのダウングレードについては以下内容を実施してください。
assimpのダウングレード
assimpの最新バージョンが5.0となっていますが、エラーが出るので4.1にダウングレードします。
find /usr/local/Homebrew/Library/Taps -name "*assimp*" cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/ git log assimp.rb brew uninstall --force assimp # install Ver4.1.0 git checkout 461abb9c49c87c4841f75d1f592ac39d4f1ad15f assimp.rb brew install assimp brew pin assimp
おまけ
自分の環境でのみ起きた問題。必要に応じて試してみてください。
python3
PYTHONPATHの設定がおかしくなったのか、モジュールをimportしてくれなくなった。
無理やり再インストールして対応。
brew uninstall --ignore-dependencies python3 brew install python3
setup.zshしたときのwarningが煩い
setup.zshをロードするたびにrti_connext_ddsがインストールされてないと言われる。
(そもそもrti_connext_dds-5.3.1は32bitアプリケーションなので、Catalinaではインストールすらできないですし!)
% source ~/ros2_eloquent/ros2-osx/setup.zsh [connext_cmake_module] Warning: The location at which Connext was found when the workspace was built [[/Applications/rti_connext_dds-5.3.1]] does not point to a valid directory, and the NDDSHOME environment variable has not been set. Support for Connext will not be available.
ターミナルを開く毎にこれが表示されるのは流石に煩わしいので、出力先を/dev/nullにして非表示にしました。
source ~/ros2_eloquent/ros2-osx/setup.zsh 2> /dev/null source ~/ros2_ws/install/local_setup.zsh 2> /dev/null
(2020/5/3追記)
# cmake 3.16.2 brew uninstall --ignore-dependencies --force cmake cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula git checkout 5f471c89725e76d4a40eb5a0eeb29a461a5c1633 cmake.rb brew install cmake brew pin cmake # poco 1.9.4 cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula/ brew uninstall --force poco git checkout 055f2f99de581160b142c3ccad392766e7b99d28 poco.rb brew install poco brew pin poco # tinyxml2 7.0.1 cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/Formula brew uninstall --force tinyxml2 git checkout cf0ae2997643a562804dc26e14bf3813b13ae1b3 tinyxml2.rb brew install tinyxml2 brew pin tinyxml2 # openssl # ref: https://qiita.com/kunit/items/0aef44d5e522abde1f9c brew uninstall openssl brew tap-new $USER/old-openssl brew extract --version=1.0.2t openssl $USER/old-openssl brew install openssl@1.0.2t ln -s /usr/local/opt/openssl@1.0.2t/lib/libssl.1.0.0.dylib /usr/local/opt/openssl/lib/libssl.1.0.0.dylib ln -s /usr/local/opt/openssl@1.0.2t/lib/libcrypto.1.0.0.dylib /usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib
ロボットと電子工作とプログラミング!
女の子は甘いもので出来てる?