虚拟机上无法运行ubuntu自带的gazebo仿真器报VMware: vmw_ioctl_command error 无效的参数

问题说明:

虚拟机版本:VMware® Workstation 16 Pro

Ubuntu版本:Ubuntu 18.04

现象:

gazebo闪退,并报  VMware: vmw_ioctl_command error 无效的参数

 

问题分析:

问题的表面意思就是vmw_ioctl_command这个参数除了问题,从网上了解了下,大概就是虚拟机环境的bug导致的,可能在虚拟机机里,gazebo在参数加载时,出错了,并且网络上也给出了两个解决方式。从问题描述来看,不光是gazebo运行会出这个问题,其他的如rviz也有可能报这个问题。

  解决方法1:设置环境变量

网上有人通过排查,认为时加载环境变量出的问题,并顺藤摸瓜,找到了解决方法,通过输入以下命令,关闭硬件加速功能,即可解决问题。

    export SVGA_VGPU10=0
    或者
    export LIBGL_ALWAYS_SOFTWARE=1

 如果以上指令直接在shell中运行时没有问题的,但是每打开一个新的shell,就需要输入一次,才能在那个shell中运行gazebo,比较麻烦,因此,我们可以通过以下命令将其加入到用户环境变量,在打开新shell时自动运行该指令。

    echo "export SVGA_VGPU10=0" >> ~/.bashrc
    或者
    echo "export LIBGL_ALWAYS_SOFTWARE=1" >> ~/.bashrc

解决方法2:关闭虚拟机的加速3D

 

 该方法虽然解决了gazebo启动闪退问题,但是如果我们在虚拟机中需要使用GPU图形加速功能,别忘了重新打开该处设置。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值