ROS2 MAC OS Install
ROS2 MAC OS Install(非原創),安裝過程記錄一下
注意:
(1)如果安裝了anaconda,請將~/.bash_profile檔案中的export PATH="/anaconda3/bin:$PATH"遮蔽,否則預設使用anaconda中的python,導致接下來安裝catkin_pkg錯誤。
(2)需要注意tinyxml2的版本,在ROS 2 Bouncy Bolson的時候tinyxml2的版本要求是6,而macOS 10.14.1的tinyxml2是7,需要降版本。
安裝
ROS2的安裝有兩種方式:Binary packages與Building from source,這裡選擇Binary packages安裝方式。
1. 安裝brew(一般一定安裝),參考https://brew.sh/網址。
安裝brew後,在Terminal中執行
$ brew doctor
修復一些錯誤。
2. 安裝一些庫檔案
$ brew install python3 # install asio and tinyxml2 for Fast-RTPS $ brew install asio tinyxml2 # install dependencies for robot state publisher $ brew install tinyxml eigen pcre poco # OpenCV isn't a dependency of ROS 2, but it is used by some demos. $ brew install opencv # install OpenSSL for DDS-Security $ brew install openssl # install Qt for RViz $ brew install qt freetype assimp
3. 安裝一些其他的依賴褲
$ python3 -m pip install catkin_pkg empy git+https://github.com/lark-parser/[email protected] pyparsing pyyaml setuptools argcomplete
4. 關閉系統的SIP
重啟系統後,按住command+R鍵,進入Recovery OS,啟動Terminal,輸入
$ csrutil status
如果顯示:System Integrity Protection status: enabled.那麼需要關閉,在終端輸入
$ csrutil disable
關閉SIP
5. 下載ROS2
進入https://github.com/ros2/ros2/releases找到對應的版本,macOS應該下載到~/Downloads/ros2-package-osx-x86_64.tar.bz2。
解壓:
$ mkdir -p ~/ros2_install $ cd ~/ros2_install $ tar xf ~/Downloads/ros2-package-osx-x86_64.tar.bz2
6. 安裝DDS(Data Distribution Service)
如果需要OpenSplice的支援,那麼需要去 https://github.com/ADLINK-IST/opensplice/releases下載,然後解壓,在~/.bash_profile檔案中檔案中新增OSPL_HOME環境變數,路徑中必須包含release.com,如:
export OSPL_HOME=/Users/<name>/x86_64.darwin10_clang/
如果需要Connext支援,那麼在https://www.rti.com/free-trial中下載一個30試用版本,安裝完成後,在~/.bash_profile檔案中新增:
export NDDSHOME=/Applications/rti_connext_dds-5.3.1/
7. 設定ROS2
進入ROS2環境
$ . ~/ros2_install/ros2-osx/setup.bash
執行一個例子測試,在一個終端中執行:
$ ros2 run demo_nodes_cpp talker
在另一個終端中執行:
$ ros2 run demo_nodes_cpp listener
8. 參考:
https://index.ros.org/doc/ros2/OSX-Install-Binary/