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/lark.git@0.7b 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/
如果需要RTI支持,那么在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. 安装vsc, colcon等
$ python3 -m pip install argcomplete catkin_pkg colcon-common-extensions coverage empy flake8 flake8-blind-except flake8-builtins flake8-class-newline flake8-comprehensions flake8-deprecated flake8-docstrings flake8-import-order flake8-quotes mock nose pep8 pydocstyle pyflakes pyparsing setuptools vcstool
9. 参考:
https://index.ros.org/doc/ros2/OSX-Install-Binary/
ROS2 MAC OS Install的更多相关文章
- RabbitMQ for Mac OS Install
使用brew来安装 RabbitMQ brew install rabbitmq 执行看到如下命令: Updating Homebrew... ==> Auto-updated Homebrew ...
- mac下的改装人生——制作mac os 启动盘
我即将开始对我的mac进行彻底的改造,现在还需要的是一个mac的启动盘或者启动光盘.由于没钱买mac的安装光盘或者安装盘,只能网上下了一个镜像自己做启动盘~ 需要:装有Mac Os的电脑,至少8g的u ...
- Install Docker on Mac OS X(转)
Install Docker on Mac OS X You can install Docker using Boot2Docker to run docker commands at your c ...
- Install wget in Mac OS X Without Homebrew or MacPorts
May 22, 2012 - 31 Comments The command line tool wget lets you retrieve a group of files from FTP an ...
- mac os 10.10 pod install errors
/System/Library/Frameworks/Ruby.framework/Versions//gems/rake-/bin/rake RUBYARCHDIR=/Library/Ruby/Ge ...
- install Mac OS on Vmware
本文将用详尽的图文介绍如何在虚拟机中安装运行Mac OS X,只要严格地按照本教程一步步操作,即使不了解苹果电脑的读者,也能顺利地安装并运行Mac OS X. 一.准备工作 VMWare 12 Pro ...
- Mysql On Mac OS: Remove & Install
If you downloaded and installed from .dmg package already, and mightbe sometime it sucks because of ...
- Install Terraform on Windows, Linux and Mac OS
Step-by-step tutorial of how to download and install Terraform on Windows, Linux and Mac OS. Terrafo ...
- Install MySQL on Mac OS X——MAC安装MySQL
很多关于如何安装MySQL的教程已经过时了,或者比必须的步骤复杂得多.这篇教程将展示如何安装MySQL,启动MySQL,以root用户进入MySQL,以及创建删除退出数据库. Step 1: 下载My ...
随机推荐
- 关于对javaUtils封装和三层架构的笔记
1.什么是三层架构: 三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer).业务逻辑层(Business ...
- OpenStack IceHouse 部署 - 4 - 计算节点部署
Nova计算服务(计算节点) 参考 本页内容依照官方安装文档进行,具体参见Configure a compute node(nova service) 前置工作 数据库 由于我们在Nova(计算管理 ...
- webpack打包踩坑之TypeError: Cannot read property 'bindings' of null
file loader介绍:https://www.webpackjs.com/loaders/file-loader/ babel loader介绍:https://webpack.js.org/l ...
- 理解position:relative
前言:position有5个属性:static.absolute.relative.fixed和inherit.本篇博客主要介绍relative属性,因为似乎很多人对这个属性的理解很模糊,而且不清楚r ...
- 008Spring & JPA & Hibernate & MySQL
01下载免安装版MySQL 02安装MySQL a)将MySQL压缩包解压到合适的位置,以C:\programmer\Tools\mysql-5.7.20-winx64路径为例: b)新建系统变量,变 ...
- integer storage and decimal storage differences in java
package storage.java; public class StorageJava { public static void main(String[] args) { byte b = 1 ...
- C++ 重载 重写 重定义
重写:存在于类的继承,修饰符是virtual,函数的参数个数,顺序,类型,均相同. 重载:函数的参数列表,类型,顺序不相同. 重定义:对父类的函数进行屏蔽,参数列表可以不相同,没有virtual修饰
- Linxu下 expect的安装与使用
expect学习 1.什么是except Expect是基于Tcl的一个相对简单的免费脚本文件语言工具,用于实现自动和交互式程序进行通信 is a software ...
- Exchange Server 产品路线图 及 补丁下载
Exchange Server RU listExchange Server and Update Rollup Build Numbers -TechNet Articles -United Sta ...
- strncpy()函数【转】
C/C++中的strncpy()函数功能为将第source串的前n个字符拷贝到destination串,原型为: char * strncpy ( char * destination, const ...