mac M1 使用anaconda安装并配置ros noetic

# 激活名为ROS的虚拟环境目录

一、conda创建并配置虚拟环境

二、安装ROS noetic

三、创建工作空间

1. 创建工作空间

2. 编译工作空间


!!!注意:!!!

本人发现还未解决的问题:

  1. ​​​​​​​主从机交互:mac系统下的arbotix_gui无法正常控制车运动,而使用Paralles Desktop安装的Ubuntu 20.04虚拟机中可以正常控制。
  2. conda search ros-noetic-*  查包,发现有些包在conda中没有,尝试源码安装,失败,放弃

但是我的Paralles Desktop现在有个问题(PD 19.0,重装18.1, 19.1也有这问题),在mac复制代码,Ubuntu虚拟机会卡死,⌘ + ⌥ + E强制退出 PD后,Ubuntu读取不到mac的剪切板,还需要重启才能读取到mac的剪切板,就很头疼…………

暂时替代方案:桥接无线网,用ssh连接mac,使用vim编辑器手动复制粘贴文件中的内容(使用gedit会在mac中打开)


参考网页:

macOS在miniconda下配置安装ROS1_macos miniconda_清风益生菌的博客-CSDN博客文章浏览阅读604次。我的MBP是M2芯片,在网上看到了很多关于给M1芯片以及因特尔时期的MBP配置的教程。_macos minicondahttps://blog.csdn.net/jyw0401/article/details/130839211补充说明:

我的anaconda也能装ros,我系统的python版本更新为3.12,使用anaconda创建的虚拟环境后调用系统默认python3.12。

使用arbotix功能包时需要用到wx的python库,wx库最高支持python3.9。安装的wx库在引用时会报错,

错误为:ModuleNotFoundError: No module named 'wx._core'

所以在创建虚拟环境前建议设置python版本为pythom3.9(2023年11月25日有效)

主体步骤和上述参考链接类似,但细微处有些差异。

一、conda创建并配置虚拟环境

首先可以先更新一下conda(自行选择,也可以不更新)

conda update -n base -c conda-forge conda
conda update --all

自动同意安装名为ROS的python3.9虚拟环境,  ROS可以改成自己心仪的虚拟环境名,下面代码中也要自行修改相应虚拟环境名

conda create -n ROS python=3.9 -y 

激活名为ROS的虚拟环境,并配置环境

conda activate ROS 
conda config --add channels conda-forge
conda config --add channels robostack
conda config --set channel_priority strict

如果python版本选择错误,则需要删除虚拟环境后重装

退出并自动同意删除虚拟环境ROS

conda deactivate
conda remove -n ROS --all -y

注意

参考:anaconda3 | 使用中常见错误 - 简书

安装完ROS之后需要再修改通道的优先级,在flexible模式下,Conda 将根据安装软件包的频率和当前环境的频繁程度来动态调整通道优先级。这有助于提高下载速度和减少环境创建和更新的时间。

conda config --set channel_priority flexible

不然,直接使用conda 安装第三方库时会出现错误


二、安装ROS noetic

python3.8安装ros-noetic-desktop-full会报错,所以需要用python3.9,3.10以上好像安装什么来着也有问题,忘了

安装ROS noetic及其附加工具

conda install ros-noetic-desktop-full -y
conda install compilers cmake pkg-config make ninja catkin_tools -y


三、创建工作空间

1. 创建工作空间

注意,在mac终端中无法直接使用ROS,需要先激活ROS虚拟环境(根据自己设置虚拟环境名进行修改)

conda activate ROS

使用mkdir在主目录下创建并初始化工作空间

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace

2. 编译工作空间

catkin_make进行编译使用cd .. 指令返回catkin_ws路径,输入catkin_make进行编译

cd ~/catkin_ws
catkin_make

3. 设置环境变量

macOS系统下,设置激活ROS所在conda虚拟环境时自动设置环境变量,参考文章

安装在conda虚拟环境下的ROS noetic自动导入环境变量: source ~/catkin_ws/devel/setup.sh-CSDN博客文章浏览阅读3次。macOS系统在conda中安装的ROS noetic,为了让系统能够找到我们的功能包和可执行文件,直接在终端输入指令echo " source ~/dev_ws/install/local_setup.sh" >> ~/.bashrc,会在未启动ROS所在虚拟环境时报错。https://blog.csdn.net/qq_37075525/article/details/135009544?spm=1001.2014.3001.5501我在该文章中说的比较详细,在此就不再重复了

  • 52
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值