M1芯片Mac 虚拟机上安装ROS Melodic

M1芯片的Mac上虚拟机的安装

  • 不同的ros系同对应着不同的ubuntu版本,其中ros的melodic对应的ubuntu版本是18。
  • 常用的安装虚拟机的软件是VMware Fushion, 但是这里有一些容易踩坑的点。
    1) 由于M1芯片采用的是ARM架构,所以需要下载对应ARM的VMware。可以通过可以从直接官网下载, 也可以直接参考这篇博客 mac pro M1(ARM)安装:ubuntu虚拟机(四)里面有非常详细的教程。
    但是看到这里不要急于尝试,对于Ubuntu20和22,上述方法是有效的,但是对于Ubuntu18则行不通(笔者已经踩过这个坑),后文会对此进行详细解释。
  1. Ubuntu18的镜像文件也需要采用对应的ARM版本,这里直接给出下载链接。选择其中的buntu-18.04.6-server-arm64.iso下载即可。
  2. 上文提到,哪怕是使用支持ARM架构的VMware也无法成功安装Ubuntu18。笔者尝试了很多次,每次在系统setup的阶段都会出现“Your installation CD-ROM couldn’t be mounted. This probably means that the CD-ROM was not in the drive. If so you can insert it and try again”的报错。笔者查阅资料得知, 这是下述原因造成的。

The issue is that kernel isn’t detecting the VMware CD-ROM device or the VMware SATA controller. Nor that ISO boot from the CD if you change its bus type to SCSI. That installer is using a 4.x kernel. That’s an old kernel.

  1. 对此,相应的解决方案是:利用UTM安装Ubuntu18。利用UTM安装Ubuntu的过程参考这篇教程就好m1芯片的macbook pro使用UTM虚拟机安装ubuntu18.04 server镜像。注意走完上述教程的安装流程后(安装完ubuntu图形化界面后),会出现没有网络的问题。

  2. 注意,走完4中的教程的安装流程后(安装完ubuntu图形化界面后),会出现没有网络的问题。这里的解决方案打开终端输入ifconfig -a命令查看可用网卡名称。下图中我的网卡名称就是enp0s6。
    (注意ifconfig查看当前启动的网卡,如果你的ifconfig结果只有lo,记得sudo ifconfig enp0s6 up, 启用该网卡)
    在这里插入图片描述
    然后sudo gedit /etc/netplan/01-netcfg.yaml, 修改网卡配置文件,将网卡名称修改为ifconfig命令看到的。注意记得sudo chmod 777 +文件名 修改权限,否则01-netcfg.yaml文件是只读模式,无法对其进行修改。

sudo chmod 777 /etc/netplan
sudo gedit /etc/netplan/01-netcfg.yaml 

在这里插入图片描述
6) 配之好网卡后reboot重启虚拟机,就可以尽情上网了。
7) 到这里虚拟机的安装就结束了。

虚拟机上ROS Melodic的安装

1)安装过程可以参考这篇博客

2)如果你没有梯子的话,我猜你在rosdep update阶段一定会遇到报错,解决方法可以参照这篇博客,按照博客的流程走一遍,我相信你一定可以解决这个问题。

3)到这里应该ros的安装也就大功告成啦。

未完待续

这篇文章是匆匆写完,有不尽之处欢迎在评论补充,之后我有空也会对文章进行改进使其更清晰且完善。

### 回答1: 在 M1 芯片MacBook 上安装 ROS 时,需要注意以下几点: 1. ROS 只支持 64 位系统,需要安装 macOS Big Sur 或更高版本。 2. M1 芯片Mac 上需要使用 Rosetta 运行 x86 架构的软件包,因为 ROS 的部分软件包目前还只支持 x86 架构。 以下是在 M1 芯片MacBook 上安装 ROS 的步骤: 1. 安装 Homebrew: ``` /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` 2. 安装 Rosetta: ``` softwareupdate --install-rosetta ``` 3. 安装依赖项: ``` sudo apt-get update sudo apt-get install -y python3-rosdep python3-rosinstall-generator python3-wstool python3-rosinstall build-essential cmake ``` 4. 初始化 rosdep: ``` sudo rosdep init rosdep update ``` 5. 创建 ROS 工作空间: ``` mkdir -p ~/ros2_ws/src cd ~/ros2_ws ``` 6. 通过 rosinstall_generator 生成 ROS 软件包清单: ``` ros2 pkg install --rosdistro foxy --deps --from-source --skip-keys "opencv*" ``` 7. 安装 ROS 软件包: ``` rosdep install -y --from-paths src --ignore-src --rosdistro foxy -r --os=debian:buster ``` 8. 编译 ROS: ``` colcon build --symlink-install ``` 安装完成后,你可以按照 ROS 的官方文档进行测试和使用。 ### 回答2: 要在MacBook M1安装ROS (Robot Operating System),您需要遵循以下步骤: 1. 下载和安装Homebrew:打开终端应用程序,运行以下命令: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" 2. 使用Homebrew安装必要的依赖项:在终端中运行以下命令: brew install pkg-config cmake python opencv 3. 下载ROS:运行以下命令来克隆ROS存储库: git clone https://github.com/ros/homebrew-ros.git ~/ros_catkin_ws 4. 设置环境变量:在终端中打开.bashrc或.zshrc文件。您可以使用以下命令来打开.bashrc文件: open -e ~/.bashrc 在文件末尾添加以下行: source /opt/ros/noetic/setup.bash 保存文件并关闭终端。 5. 编译ROS:运行以下命令来构建ROScd ~/ros_catkin_ws ./install_isolated --rosdistro noetic --catkin-make-args install 这个过程需要一些时间,具体取决于您的网络速度和计算机性能。 6. 配置ROS工作空间:创建一个新的ROS工作空间,运行以下命令: mkdir -p ~/ros_ws/src cd ~/ros_ws/src catkin_init_workspace 7. 构建ROS工作空间:回到ros_ws目录,并运行以下命令: cd ~/ros_ws catkin_make 8. 激活ROS环境:在终端中运行以下命令以激活ROS环境: source ~/ros_ws/devel/setup.bash 现在您已经成功地在MacBook M1安装ROS。您可以通过运行roscd命令来导航到安装ROS软件包,并使用其他ROS命令来开始开发和操作机器人系统。请记住,这个过程可能会因个人设置和环境而异,因此仔细阅读ROS官方文档以获取更多详细信息。 ### 回答3: 要在M1芯片MacBook上安装ROS(机器人操作系统),需要一些额外的步骤和注意事项。由于M1芯片是基于ARM架构的,而ROS通常是为x86架构编译的,所以需要进行一些适配和配置。 首先,确保你的MacBook运行的是最新版本的操作系统——macOS Big Sur或更高版本。然后,按照以下步骤进行安装: 1. 安装Homebrew:在终端中执行以下命令安装Homebrew: ```shell /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ``` 2. 更新Homebrew:执行以下命令以确保Homebrew是最新的版本: ```shell brew update ``` 3. 安装适用于M1芯片ROS依赖库:执行以下命令安装依赖库和ROS相关工具: ```shell brew install python brew install pyqt@5 brew install cmake brew install opencv@3 brew install gazebo9 brew install ros/ros/melodic ``` 4. 设置ROS环境变量:将以下行添加到`~/.bash_profile`或`~/.zshrc`文件中: ```shell source /opt/ros/melodic/setup.zsh ``` 5. 初始化ROS工作空间:创建一个ROS工作空间并初始化: ```shell mkdir -p ~/ros_ws/src cd ~/ros_ws catkin init ``` 6. 安装其他ROS包:根据你的需求,可以使用`rosinstall_generator`和`wstool`命令安装其他ROS包。 至此,你已经成功在MacBook M1芯片安装ROS。记住,由于M1芯片上的ROS软件数量和稳定性可能较x86架构的版本有所减少,请确认所需软件和包在M1芯片上是兼容的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值