wsl rviz可视化

本文介绍了如何使用一键脚本快速安装ROS1在Ubuntu 18.04上,并处理了WSL中的可视化问题,包括安装VCXSRV、配置DISPLAY环境以及解决GLRendererStarted错误。重点讨论了LIBGL_ALWAYS_INDIRECT设置对rviz的影响及解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 一键安装ros

因为要用ros1,所以我这里用的是ubuntu18.04

直接用鱼老师的一键安装ros脚本,省去了被墙的烦恼。

不想切换页面的话可以直接输入这行代码到终端:wget http://fishros.com/install -O fishros && . fishros

按照操作选择即可,推荐先选择更换系统源和第三方源以后在继续安装,后续根据系统选择ros版本即可。

看到小鱼老师提示的ros安装完成基本就是没有问题了。可以用roscore看下是否会有相关信息输出。如果有就是一切正常。

2 wsl->windows可视化

众所周知,wsl是没法显示界面的,但是一些可视化的操作又必须要做,难道要放弃wsl了吗,不不不,我还想好好用我的微信,玩我的lol!

首先我们在windows上安装上VCXSRV,为什么装这个?问就是我看的教程都这样oo。

下载VCXSRV

点击download即可。打开可执行文件:

image-20220715114749758

下一步选择start no client

image-20220715114817820

下一步,勾上Disable access control

image-20220715120521264

上述操作完成后,在~/.bashrc中添加export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0用于将显示信息绑定到windows的x-server。【每次修改完.bashrc后,如果想让他即刻生效,可以执行source ~/.bashrc】

踩坑1-GL Renderer Started -> Segmentation fault

踩坑的时候我看到很多帖子让修改 LIBGL_ALWAYS_INDIRECT=1的,结果导致了rviz启动时出现Segmentation fault

image-20220715115828055

执行rosrun rviz rviz -l查看详细的运行消息,可以看到

image-20220715120819899

查了下这个参数的作用:LIBGL_ALWAYS_INDIRECT=1,也就是设置为INDIRECT RENDERING(间接渲染)是传输OpenGL参数,最终绘图的是X.org。而DIRECT RENDERING是可以直接访问硬件进行渲染的。里接下来,不设置可能会更快?而且不用通过mesa和X.org少一些出现bug的机会?有懂得大佬请教教我==

遇到上面的问题我们可以进行这个设置:export LIBGL_ALWAYS_INDIRECT=0

踩坑2-仍然是GL Renderer Started -> Segmentation fault

如果出这样的错误image-20220715115406550

需要重新启动xlaunch,并在第三步设置additional parameter for VcXsrv为 -nowgl

image-20220715121020999

在执行rviz

image-20220715121216066

他回来了!!!!!!

再试下gazebo

image-20220715121302245

他也在!!!

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Caston_C

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值