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的安装也就大功告成啦。

未完待续

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

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值