解决Vmware下虚拟机下打开gazebo报错:VMware: vmw_ioctl_command error Invalid argument

引言

在使用虚拟机Vmware打开gazebo仿真环境的时候,刚打开就闪退,并报错以下错误:VMware: vmw_ioctl_command error Invalid argument,大概意思是虚拟机参数不合法,这应该是虚拟机的bug,毕竟使用虚拟机和真实的物理机上是有差别的,不过这个bug有网友已经解决了,大致有以下两种解决方案;

解决方案一:关闭虚拟机的3D图形加速

如下图,在编辑虚拟机选项中关闭3D图形加速,可以解决此问题;
在这里插入图片描述

这种方法简单粗暴,但是没有了3D图形加速功能意味着我们的虚拟机不能使用主机的GPU,而我们做仿真是需要GPU做图形加速的,所以这种方案长期来看不可取,下面有更好的解决方案。

解决方案二:设置环境变量

上面我们也讲到了,报错的原因大概是不合法的变量导致的,应该是启动gazebo的时候加载系统的某个环境变量的时候虚拟机无法完美识别导致的,所以知道了原因后,追根溯源,我们找到了以下修复方案,加入环境变量:

export SVGA_VGPU10=0

在shell中运行以上语句,但是这种方法有个坏处就是每次打开新的shell这个环境变量就失效了,所以我们需要将其加入到用户的环境变量,这样每次启动就可以自动运行此码;

echo "export SVGA_VGPU10=0" >> ~/.bashrc

加入以上代码即可完美解决虚拟机的这个问题,具体的原因我也不清楚,以上解决方案也是在网上搜集的网友的方法,具体为啥也不从而知,不过解决了问题就可以了,感谢这些网友;

结语

以上就是怎么解决的虚拟机的这个bug,不过建议是在物理机上运行linux,这样可以少去很多bug烦恼,不过实在是没有第二台电脑的话,就只能在虚拟机玩玩了,或者是租一个服务器用docker玩玩,不过也挺花钱的,哈哈!

参考文章:
CSDN:

  • https://blog.csdn.net/weixin_39759247/article/details/107055265
  • https://blog.csdn.net/xuehuafeiwu123/article/details/71601424?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allfirst_rank_v2~rank_v25-1-71601424.nonecase

你可能感兴趣的:(Linux,Vmware,ROS)