Updated on: 2019-04-16
セミナー中に開発環境としてMacOSを利用するためのインストール方法を説明します。 そして、MacOS上でROS 2をインストール方法も説明します。
他のソフトウェアをインストールするために必要です。 下記の実行でインストールします。
1
$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
インストールを確認するために、下記を実行します。
1
$ brew doctor
問題が報告されば、ROS 2のインストール手順を進む前に直してください。
brew
を利用して他の依存ソフトウェアをインストールします。
Python 3、OpenCV等ROS 2が利用する様々なソフトウェアライブラリを下記のコマンドでインストールします。
1
2
3
$ brew install python3
$ brew install asio tinyxml2
$ brew install tinyxml eigen pcre poco
ROS 2にOpenCVを利用するデモがあります。デモのために下記でOpenCVをインストールします。
1
$ brew install opencv
DDSセキュリティを利用する場合はOpenSSLが必要です。
1
$ brew install openssl
RVizを利用する場合はQt等が必要です。
1
$ brew install qt freetype assimp
ログ機能を利用するために log4cxx
が必要です。
1
$ brew install log4cxx
rqt
の依存パッケージをインストールします。
1
2
3
4
$ brew install sip pyqt5
$ ln -s /usr/local/share/sip/Qt5 /usr/local/share/sip/PyQt5
$ brew install graphviz
$ python3 -m pip install pygraphviz pydot
SROS(セキュアROS)の必要なパッケージをインストールします。
1
$ python3 -m pip install lxml
ROS 2のコマンドラインツールの依存ソフトウェアをインストールします。
1
$ python3 -m pip install catkin_pkg empy lark-parser pyparsing pyyaml setuptools argcomplete
注意:SIPの無効化は基本的に必要ではないようになったが、有効の場合は不具合が発生することがあります。動作に問題が発生する場合のみに無効設定を行ってください。
SIPにより子プロセスは親プロセスから環境変数の値が継承できません。
ROS 2をインストールするために無効にすることが必要です。
csrutil
コマンドで無効にできます。
まずは有効になっているかどうか確認します。
1
2
$ csrutil status
System Integrity Protection status: enabled.
「enabled」と書いている場合のみに下記の手順で無効にします。
リカバリOSに再起動します。
MacOSを再起動して、起動し始める時点から__Command__{:style=”border: 1px solid black”}と__R__{:style=”border: 1px solid black”}を押します。
ユティリティ−メニューから「Terminal」を起動します。
下記のコマンドを実行します。
1
$ csrutil disable
パソコンを通常のMacOSに再起動します。
下記でSIPが無効になったことを確認します。
1
2
$ csrutil status
System Integrity Protection status: disabled.
リリースページからMacOS用の最新パッケージをダウンロードします。
(現在の最新版はros2-crystal-20190408-macos-amd64.tar.bz2
です。)
新しいデレクトリにパッケージを解凍します。
1
2
3
4
$ mkdir -p ~/ros2_install
$ cd ~/ros2_install
$ tar -xvf ~/Downloads/ros2-crystal-20190408-macos-amd64.tar.bz2
[省略]
環境変数を設定します。
現在のシェルのみの環境を変更したがる場合には、下記を実行してください。
1
$ source ~/ros2_install/ros2-osx/setup.bash
ROS 2の環境変数をbashのセッションが毎回新しいシェルを起動する度に自動的に追加するのであれば, 以下が便利です:
1
2
$ echo "source ~/ros2_install/ros2-osx/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
以上、開発環境の構築が完了しました。