vmware打开虚拟机运行roscore时报错:
warning:ROS_MASTER_URI [http://192.168.31.150:11311] host is not set to this machine
可以考虑从以下几方面去解决问题:
1.检查bashrc文件中是否设置了ros的环境变量:
vim ~/.bashrc
#检查文件中是否存在以下代码
source /opt/ros/noetic/setup.bash
#如果不存在,可以输入以下指令
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
2.如果步骤1正确,但roscore仍报错
(1)如果以前装过vmware没卸载干净,会导致虚拟机无法设置桥接网络,此时可以参考这篇文章删除残留文件,再重新配置桥接网络。
如果虚拟机可以设置桥接网络,跳转第(3)步。
完美解决VMware安装后没有VMnet1和VMnet8的问题 - 萌褚的文章 - 知乎 https://zhuanlan.zhihu.com/p/518669923
(2) 重装vmware后,控制板面->网络和internet->网络连接,查看是否出现vmnet1和vmnet8:
出现之后打开vmware,编辑虚拟机网络设置,选择桥接模式,配置适配器设置为intel无线网络。
(3)完成后打开虚拟机,输入ifconfig查看你的主机ip地址:inet:xxx.xxx.xx.xx
(4)进入bashrc使用export指明你的主机ip,source一下:
vim ~/.bashrc
#进入插入模式,在文件中添加以下三行
export ROS_IP=`hostname -I | awk '{print $1}'`
export ROS_HOSTNAME=`hostname -I | awk '{print $1}'`
export ROS_MASTER_URI=http://你的主机ip地址:11311
#esc :wq
source ~/.bashrc
(5)再roscore,无报错,ctrl+alt+t 输入rosrun turtlesim turtlesim_node,显示小乌龟~