win11+wsl+ubuntu20.04+ros+x11+mobaxterm实现win11中ROS使用(含可视化)

前言

为实现在win11中使用ros...


一、win11中wsl(ubuntu20.04)安装

参考:Windows 11 安装 WSL2

主要步骤:开启虚拟化-->安装ubuntu20.04

安装后可能还是WSL1,可参考WSL1升级为WSL2进行升级。

二、使用鱼香ROS换源并更新

bash 复制代码
wget http://fishros.com/install -O fishros && . fishros

    
    
    
    
    
    

([5]:一键配置:系统源(更换系统源,支持全版本Ubuntu系统))

bash 复制代码
sudo apt update
sudo apt upgrade

    
    
    
    
    
    

三、使用鱼香ROS安装ROS

bash 复制代码
wget http://fishros.com/install -O fishros && . fishros

    
    
    
    
    
    

([1]:一键安装:ROS(支持ROS和ROS2,树莓派Jetson))

...

四、X11安装

在WSL中执行:

复制代码
sudo apt install x11-apps -y

安装x11

五、设置显示IP

在windows中查看ip,(如:终端命令:ipconfig),找到WSL网络,如我这里的172.24.128.1。

在WSL中使用下述命令设置:

复制代码
export DISPLAY=172.24.128.1:0

六、安装 mobaxterm

也可安装其他X11服务器,如VcXsrv或Xming等,mobaxterm包含了ssh等功能,文件其他调试使用。

直接在网上搜索mobaxterm安装即可。官网在此:link

七、启动测试

启动mobaxterm程序,在wsl运行图形界面命令即可。

测试:

复制代码
roscore

新开终端运行

复制代码
rviz

八、问题及解决方案

1、 win能ping能wsl,wsl无法ping通win

by:GPT,测试有效。

复制代码
要设置新的防火墙规则,以允许WSL(Windows Subsystem for Linux)能够ping通Windows 11,请按照以下步骤操作:

打开Windows Defender防火墙设置:按下"Win + R"键,输入"control panel",然后按回车键打开控制面板。在控制面板中,选择"Windows Defender防火墙"。

进入防火墙高级设置:在Windows Defender防火墙设置界面上方的左侧面板中,选择"高级设置"。

创建新的入站规则:在高级防火墙设置窗口的左侧面板中,选择"入站规则"。

新建规则向导:在右侧面板中,选择"新建规则",以启动新建规则向导。这将打开一个配置新规则的向导。

选择规则类型:在新规则向导的第一步中,选择"自定义",然后点击"下一步"。

配置规则:根据以下指导配置新的规则:

基本:设置规则名称和描述(可选),然后点击"下一步"。

操作:选择"允许连接",然后点击"下一步"。

协议和端口:选择"ICMPv4",然后点击"下一步"。

端点:选择"这台计算机",然后点击"下一步"。

设置源:选择"任何IP地址",然后点击"下一步"。

设置目标:选择"这台计算机",然后点击"下一步"。

高级:不需要进行更改,直接点击"下一步"。

操作:确认你的配置,并点击"完成"。

应用设置:确保保存并应用新的防火墙规则配置。

2、所有配置完成,打开可视化没反应

可能原因,wsl无法连接到mobaXterm的X服务器。打开mobaXterm的设置(Settings),选择X11,设置X11 remote access 为full。

2、所有配置完成,打开rviz出现段错误(Segmentation fault)

解决方法:设置:

bash 复制代码
export LIBGL_ALWAYS_INDIRECT=0

 
 
 
 
 
 

转自:

点击查看

相关推荐
✿ ༺ ོIT技术༻1 小时前
Linux:网络层的重要协议或技术
linux·服务器·网络
付出不多2 小时前
linux——mysql高可用
linux·运维·mysql
C-DHEnry8 小时前
Linux概述:从内核到开源生态
linux
蟑螂恶霸8 小时前
解决ubuntu20中tracker占用过多cpu,引起的风扇狂转
linux·运维·ubuntu
rzsh12348 小时前
[ linux-系统 ] 进程地址空间
linux
1024小神8 小时前
tauri2项目使用sidcar嵌入可执行文件并使用命令行调用
linux·运维·服务器
AI风老师9 小时前
2、ubuntu系统配置OpenSSH | 使用vscode或pycharm远程连接
linux·运维·服务器·ssh
选与握10 小时前
ubuntu工控机固定设备usb串口号
linux·运维·ubuntu
Paraverse_徐志斌10 小时前
基于 Zookeeper 部署 Kafka 集群
ubuntu·zookeeper·kafka·消息队列
休息一下接着来10 小时前
C++ I/O多路复用
linux·开发语言·c++